NAT原理(虚拟机上网原理)
#define:虚拟机的hostname为hadoop100, ip地址为:192.168.100.100
#define:本机(Window系统)VMnet8的ipv4地址为:192.168.100.5
问:为什么虚拟机可以连接外网呢?比如www.baidu.com。
其实此处的192.168.100.100与192.168.100.5都是虚拟ip地址,其中192.168.100.100就是NAT模式自动生成的虚拟ip地址(当然后续操作你也可以手动设置固定的虚拟IP地址)。
我们可以注意到,此处的192.168.100.100与192.168.100.5其实网段是一样的,即都是100.***,NAT模式下的联网原理其实就是通过虚拟机的虚拟ip地址(192.168.100.100)与Windows下的VMnet8的ipv4的虚拟ip地址对接(192.168.100.5),最后通过ipv4的ip地址与真实的ip地址对接(也就是你家wifi的网关),就可以上网了!
问:如何为Linux(CentOS6)设置固定的虚拟IP呢?
vim /etc/sysconfig/network-scripts/ifcfg-eth0
Translate:
1.在“etc/bin”中的“etc”真正代表的是“etcetera”(附加物)。在早期的Unix系统中,最为重要的目录是“bin”目录 (“bin”是“binaries”二进制文件――编译后的程序的缩写),“etc”中则包含琐碎的程序,如启动、关机和管理。运行一个Linux必须的东西的列表是:一个二进制程序,etcetera,etcetera――换句话说,是一个底层的重要项目,通常添加一些次等重要的零碎事物。今天, “etc”包含了广泛的系统配置文件,这些配置文件几乎包含了系统配置的方方面面,同样非常重要。
2.network网络,scripts脚本。在Linux中,万物皆文件,不用说网络配置,就连外设的属性也是通过文件来写的。
3.ifcfg,ipconfiguration的缩写,ip地址配置,eth0为网络连接的序号,eth为Ethernet的缩写,译为以太网,一种局域网技术,在这里你可以这样理解,虚拟机用的ip地址都是虚拟的,是用来与windows系统的实际网关做交互的,但这个虚拟ip地址也只限与windows系统的VMnet8中的ipv4的虚拟ip地址交互,通过ipv4的虚拟ip地址才能与真实网关交互,那么实际上也是一种局域的过程,在这里你就这么理解吧,也没啥用这个地方,我给你翻译翻译也是方便你记忆。
修改细节:
1.将onboot设置为yes:系统启动时自动连接网络
2.BOOTPROTO设置为static:设置为静态方式获取ip地址
3.IPADDR虚拟ip地址设置为你想设置成的ip,注意网段一定要与ipv4网关的网段一样
4.GATEWAY网关,设置成VMnet8中ipv4的网关即可。这里重点理解一下网关,网关用于不同网络之间地址的转换,这里其实就是以太网与互联网之间的交互问题,地址转换可以理解为ipv4的ip地址向你家路由器ip地址的转换
5.DNS1写成与网关一样即可。
6.以上几项,你的文件中可能没有,怎么办呢?自己写上嘿嘿!
7.写完之后,service network restart(网络服务重启)或者是reboot重启虚拟机,然后就天晴了雨停了,你又感觉你行了