- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章虚拟机Linux桥接模式下设置静态IP详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
本文研究的主要是虚拟机linux桥接模式下设置静态ip的相关内容,具体介绍如下.
之前一直使用nat模式,测试时android端远程访问虚拟机的mysql时发现无法连接,但是访问同学拷过来的虚拟机linux的mysql却成功了,想了下原因是他设置的桥接模式。关于两种模式的区别,网上可以搜到一大堆文章,通俗点讲,nat模式下,虚拟机从属于主机,也就是访问外部网络必须通过主机来访问,因此虚拟机的ip只有主机才能识别。而桥接模式下,虚拟机和主机是平行关系,共享一张网卡(使用网卡的多个接口),可以直接访问外部网络.
因此要想远程访问虚拟机的mysql,需要用桥接模式而非nat模式。但是桥接模式的ip一般会变动,为了避免每次远程连接都要重新设置ip,这里设置成静态ip.
第一步,linux下查看ip 。
我这里是ubuntu 16.04,这里有2项,下面一项是lo(本地环回)可以不管,上面一项才是需要配置的。注意这里我的虚拟网卡是ens33,待会儿修改的也是ens33,网上很多配置教程他们的linux系统的网卡名字并不是ens33(比如有的是eth0).
第二步,设置虚拟网络 。
vmware的菜单中,编辑->虚拟网络编辑器 。
修改vmnet信息中的“桥接到”为网卡适配器,默认是自动.
第三步,查看主机(这里是windows)的ip信息 。
命令是ipconfig /all,之所以在后面加上/all选项是为了查看网卡的描述 。
注意,这里的描述qualcomm atheros和刚才第二步选择的网卡名字是一致的,记住主机的三个重要项 。
ipv4地址:192.168.5.63 子网掩码:255.255.255.0 默认网关:192.168.5.1 。
第四步:修改linux的网络接口配置 。
1
|
$ sudo vim /etc/network/interfaces
|
修改文件(具体路径随系统而异),将ens33设为同一网段下的新ip,这里我设为192.168.5.64。(同一网段的ip计算方法是,ip和子网掩码and运算结果一致,比如192.168.5.63和255.255.255.0求and得到192.168.5.0,具体知识参考计算机网络教材的ip部分) 。
第5~10行是我手动编辑的,可以看到gateway和netmask和主机上一致,只修改了address.
第五步:设置dns 。
1
|
xyz@ubuntu:~$ sudo vim /etc/resolvconf/resolv.conf.d/head
|
然后重启虚拟机网络服务即可(实践证明这一步并无卵用,虽然不知为何,还是老老实实重启系统吧……) 。
1
2
|
xyz@ubuntu:~$ sudo /etc/init.d/networking restart
[ ok ] restarting networking (via systemctl): networking.service.
|
现在检查配置是否有误 。
查看ip,已经变成了设置的192.168.5.64 。
尝试ping一个网址 。
1
2
3
4
5
6
7
8
9
10
|
xyz@ubuntu:~$ ping www.baidu.com
ping www.a.shifen.com (180.97.33.108) 56(84) bytes of data.
bytes from 180.97.33.108: icmp_seq=1 ttl=54
time
=40.5 ms
bytes from 180.97.33.108: icmp_seq=2 ttl=54
time
=35.9 ms
bytes from 180.97.33.108: icmp_seq=3 ttl=54
time
=38.6 ms
bytes from 180.97.33.108: icmp_seq=4 ttl=54
time
=35.5 ms
^c
--- www.a.shifen.com ping statistics ---
packets transmitted, 4 received, 0% packet loss,
time
3006ms
rtt min/avg/max/mdev = 35.582/37.696/40.584/2.056 ms
|
试主机ping虚拟机 。
但是虚拟机ping主机就失败了 。
1
2
3
4
5
|
xyz@ubuntu:~$ ping 192.168.5.63
ping 192.168.5.63 (192.168.5.63) 56(84) bytes of data.
^c
--- 192.168.5.63 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss,
time
2999ms
|
原因是主机开启了防火墙,关闭公用网络的防火墙 。
再次ping主机就成功了 。
1
2
3
4
5
6
7
8
9
10
|
xyz@ubuntu:~$ ping 192.168.5.63
ping 192.168.5.63 (192.168.5.63) 56(84) bytes of data.
bytes from 192.168.5.63: icmp_seq=1 ttl=128
time
=0.931 ms
bytes from 192.168.5.63: icmp_seq=2 ttl=128
time
=0.719 ms
bytes from 192.168.5.63: icmp_seq=3 ttl=128
time
=0.411 ms
bytes from 192.168.5.63: icmp_seq=4 ttl=128
time
=0.448 ms
^c
--- 192.168.5.63 ping statistics ---
packets transmitted, 4 received, 0% packet loss,
time
3000ms
rtt min/avg/max/mdev = 0.411/0.627/0.931/0.212 ms
|
总结 。
以上就是本文关于虚拟机linux桥接模式下设置静态ip详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持! 。
原文链接:http://www.cnblogs.com/Harley-Quinn/p/7458373.html 。
最后此篇关于虚拟机Linux桥接模式下设置静态IP详解的文章就讲到这里了,如果你想了解更多关于虚拟机Linux桥接模式下设置静态IP详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
给定的输入是192.168.3.78/27 输入可以是任意C类ip地址,以上ip为例进行尝试 预期输出应显示从 192.168.3.65 到 192.168.3.94 的所有 IP如下 192.168
您好,我是一名 javascript 菜鸟,正在为 IP 范围编写验证器。例如,1.1.1.1-2.2.2.2 是一个有效范围,但我想确保第一个 IP 不大于第二个 IP。 2.2.2.2-1.1.1
在 MySQL 数据库中存储多种 IP 类型的最佳方式是什么: - 单一 IP (123.123.123.123) - IP 范围 (123.123.123.1 - 123.123.123.121)
所以我有一个带有子网的 IP:8.8.8.0/24 我如何将其转换为 8.8.8.0 和 8.8.8.255(实际上是它们的 ip2long 结果) 在 PHP 和 JavaScript 中 最佳答案
我有 Windows7 作为我的基本操作系统。最重要的是,我在 Ubuntu 上安装了 Virtual Box。我希望 ubuntu 获得与我的基本操作系统(Win7)相同的 IP 地址。我如何实现这
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
阅读后List of IP Space used by Facebook : “真实”列表是最后一个答案,但我想知道 Igy(答案标记为解决方案)如何通过将连续的类添加到更大的类中来大幅缩小列表(通过
我正在开发一个 web 应用程序,我已经在我的本地主机中创建了这个项目,但是网络用户需要访问我的项目,我不想给他们一个不友好的 ip 地址,所以我想用户访问一个名称例子 http://myprojec
有人可以向我解释 Azure 在逻辑应用程序的出站 IP 地址之间不同的新方式之间的区别。 我认为文档在对该问题的正确解释方面非常精简。读起来听起来好像 IP 地址在逻辑应用程序中具有完全相同的作用。
我正在尝试熟悉一个项目中java中的数据报系统,目前,我们只使用UDP包。 为了发送消息,我们在 DatagramPacket 上设置目标 IP。 /* * The fields o
我有一个 Java 服务器,当我获得连接时,我需要检查 IP 是本地 IP 还是公共(public) IP。当它是我自己的本地 IP 时,我可以检测到它,但我在使用其他本地 IP 时遇到了一些问题。J
所以我在网上看到了很多例子,这些例子展示了如果你知道起始 IP 和结束 IP 如何获得完整的 IP,但我需要的是在提供后告诉我完整的 IP 范围带有起始 IP 和所需 IP 地址数的代码。 因此,例如
我创建了一个 python 项目,用于扫描 IP 范围(即 x.y.z.0/24)并返回在线主机列表。它将在线主机列表保存到仅包含 IP 的文件中(即 ['192.168.0.1'、'192.168.
如果用户的 ip 在某个 IP 范围之间,我正在使用重定向。但是,我正在使用多个 ip 范围,所以我想知道执行此操作的最佳方法。我目前正在使用它来重定向, 但是如果 IP 范围是 72.122.166
好的,现在是星期五下午,我度过了漫长的一周,希望能得到一些帮助!目前,我有一个 IP 范围列表,如下所示: List ipRanges = new List(); ipRanges.Add(new I
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
下面是我的 CloudFormation 模板的片段,用于将弹性 IP 地址与网络接口(interface)的主 IP 相关联: "MyInterfaceSelfEipAssociat
我在 Azure 上创建了 Python 函数,该函数调用外部 API 服务,该服务仅允许访问白名单 IP。 根据 Microsoft 文档 ( https://learn.microsoft.com
我在 Azure 上创建了 Python 函数,该函数调用外部 API 服务,该服务仅允许访问白名单 IP。 根据 Microsoft 文档 ( https://learn.microsoft.com
我在我的 CentOS 5 x86_64 中使用 IP 别名。为简化此示例:IP 地址 A 是 eth0 地址,IP 地址 B 是 eth0:0地址。我有 2 个 Apache 实例(版本 2.2.3
我是一名优秀的程序员,十分优秀!