在图形界面很好 *** 作,命令行界面使用一下命令:
vi /etc/sysconfig/network-scripts/ifcfg-XXX #编辑网卡配置文件
IPADDR=19216811 #设置IP地址
NETMASK=2552552550 #设置子网掩码,也可以使用PREFIX=24
GATEWAY=1921681254 #设置网关
DNS1=114114114114 #设置主DNS服务器
DNS2=223555 #设置备用DNS服务器
ONBOOT=yes #修改网卡随系统自启动
BOOTPROTO=static #设置网卡采用静态IP,自动获取就是dhcp
systemctl start/stop/restart/status NetworkManager
#启动/停止/重启/状态网络服务状态(CentOS 7及后面版本)
service network start/stop/restart
#启动/停止/重启网络服务(CentOS 6及之前的版本)
#vim命令请查阅资料学习
能够正确的配置网卡IP地址是保证两台服务器互相通信的前提,而Linux系统中的一切都是文件,配置网络的工作其实就是在编辑网卡配置文件。在RedHat7系统中,配置IP地址大概流程是这样的:
第1步:首先要切换到"/etc/sysconfig/network-scripts"目录中(该目录存放着网卡的配置文件)。
第2步:使用vim编辑器修改网卡文件"ifcfg-eno16777736",逐项写入配置参数并保存退出,因每台电脑的硬件及架构情况都是不一样的,同学们的网卡默认名称请通过ifconfig命令自行确认。
设备类型:TYPE=Ethernet
地址分配模式:BOOTPROTO=static
网卡名称:NAME=eno16777736
是否启动:ONBOOT=yes
IP地址:IPADDR=1921681010
子网掩码:NETMASK=2552552550
网关地址:GATEWAY=192168101
DNS地址:DNS1=192168101
第3步:重启网卡设备并测试网络是否联通。
进入到网卡配置文件所在的目录,然后编辑网卡配置文件填入下面的信息:
[root@linuxprobe ~]# cd /etc/sysconfig/network-scripts/
[root@linuxprobe network-scripts]# vim ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=static
NAME=eno16777736
ONBOOT=yes
IPADDR=1921681010
NETMASK=2552552550
GATEWAY=192168101
DNS1=192168101
执行重启网卡设备的命令,正常情况不会有提示信息,然后通过ping命令测试网络能否联通。
[root@linuxprobe network-scripts]# systemctl restart network
[root@linuxprobe network-scripts]# ping 1921681010
PING 1921681010 (1921681010) 56(84) bytes of data
64 bytes from 1921681010: icmp_seq=1 ttl=64 time=0081 ms
64 bytes from 1921681010: icmp_seq=2 ttl=64 time=0083 ms
64 bytes from 1921681010: icmp_seq=3 ttl=64 time=0059 ms
64 bytes from 1921681010: icmp_seq=4 ttl=64 time=0097 ms
^C
--- 1921681010 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0059/0080/0097/0013 ms
具体使用方法,楼主可以参考一下这篇文章:>关于桥接网络:
]Host的物理网卡和Guest的网卡在VMnet0交换机上通过虚拟网桥进行桥接,这也就是说,我的物理网卡和Guest的虚拟网卡(注:这个虚拟网卡不等于VMwareNetworkAdapterVMnet1或者VMwareNetworkAdapterVMnet8)处于同等地位,此时的Guest就好像我的Host所在的一个网段上的另外一台机器。我的Host的物理网卡配置如下:IP地址为手工指定方式,网关为19216801,那么我的Guest就应该和我的Host处于同一个网段,它的配置可为:
Ethernetadapter本地连接:
Connection-specificDNSSuffix:
Description:BroadcomNetXtreme57xxGigabitController
PhysicalAddress:00-1A-A0-A9-DC-1B
DhcpEnabled:No
IPAddress:19216802
SubnetMask:2552552550
DefaultGateway:19216801
IP地址为手工指定方式,网关为19216801,那么我的Guest就应该和我的Host处于同一个网段,它的配置为:
EthernetadapterBridged:
Connection-specificDNSSuffix:
Description:BroadcomNetXtreme57xxGigabitController
PhysicalAddress:00-1A-A0-A9-DC-1B
DhcpEnabled:No
IPAddress:192168010
SubnetMask:2552552550
DefaultGateway:19216801
同样,IP地址也为手工指定方式,网关也为19216801,这样的话,IP地址为19216802的Host和IP地址为
192168010的Guest就可以互通了:
EthernetadapterBridged:
Connection-specificDNSSuffix:
Description:BroadcomNetXtreme57xxGigabitController
PhysicalAddress:00-1A-A0-A9-DC-1B
DhcpEnabled:No
IPAddress:192168010
SubnetMask:2552552550
DefaultGateway:19216801
Pinging19216810010with32bytesofdata:
Replyfrom19216810010:bytes=32timeReplyfrom19216810010:bytes=32timeReplyfrom19216810010:bytes=32timeReplyfrom19216810010:bytes=32time
Pingstatisticsfor19216810010:
Packets:Sent=4,Received=4,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=0ms,Maximum=0ms,Average=0ms
当然,Guest所配置的IP地址一定要在1921680网段没有被占用,而且我的网络管理员允许我来使用这个IP地址。如果在1921680网段,存在DHCP服务器,那么Host和Guest都可以把IP地址获取方式设置为DHCP方式。
关于NAT网络
在NAT网络中,会使用到VMnet8虚拟交换机,Host上的VMwareNetworkAdapterVMnet8虚拟网卡被连接到VMnet8交换机上,来与Guest进行通信,但是VMwareNetworkAdapterVMnet8虚拟网卡仅仅是用于和VMnet8网段通信用的,它并不为VMnet8网段提供路由功能,处于虚拟NAT网络下的Guest是使用虚拟的NAT服务器来连接到Internet的。VMware功能非常强大,在NAT网络下,我们甚至可使用PortForwarding功能,来把Host的某一个TCP或者UDP端口映射到Guest上!我的VMwareNetworkAdapterVMnet8虚拟网卡的IP地址配置如下:Ethernetadapter本地连接:
EthernetadapterVMwareNetworkAdapterVMnet8:
Connection-specificDNSSuffix:
Description:VMwareVirtualEthernetAdapterforVMnet8
PhysicalAddress:00-50-56-C0-00-08
DhcpEnabled:No
IPAddress:1921681531
SubnetMask:2552552550
DefaultGateway:
IP地址是手工填写的,但却不是由我来指定的,而是VMware在安装的时候自动随机指定的一个IP地址(注意,不要修改VMwareNetworkAdapterVMnet8虚拟网卡所在的网络ID,这样的话会造成Host和Guest无法通信)。那么,我的NAT网络的虚拟机的IP地址也为1921681530这个网段,其IP地址配置为:
WindowsIPConfiguration
HostName:Lineage
PrimaryDnsSuffix:
NodeType:Unknown
IPRoutingEnabled:no
WINSProxyEnabled:No
EthernetadapterNAT:
Connection-specificDNSSuffix:
Description:VMwarePCIEthernetAdapter
PhysicalAddress:00-50-56-C0-00-08
DhcpEnabled:Yes
AutoconfigurerationEnanble:Yes
IPAddress:19216815310
SubnetMask:2552552550
DefaultGateway:1921681532
DHCPServer:192168153254
可以看到,它的IP地址分是由DHCP服务器分配的的,DHCP服务器的地址为19216885254,那为什么会有DHCP服务器存在呢?
这是因为VMware安装之后,会有一台虚拟的DHCP服务器为虚拟机来分配IP地址,这个DHCP服务器,你可以ping通它,但是无法进行访问,因为实际上它就是一个系统服务而已,在开始——>运行中输入servicesmsc,就会看到这个服务
此时可以看到,Guest的网卡和Host上的VMwareNetworkAdapterVMnet8虚拟网卡拥有相同的网络ID,这样的话,在Guest中,ping通Host就没有问题了:
Pinging1921681531with32bytesofdata:
Replyfrom1921681531:bytes=32timeReplyfrom1921681531:bytes=32timeReplyfrom1921681531:bytes=32timeReplyfrom1921681531:bytes=32time
Pingstatisticsfor1921681531:
Packets:Sent=4,Received=4,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=0ms,Maximum=0ms,Average=0ms
有一点需要说明的是,在NAT方式的网络中,Guest的Gateway都指向了192168X2,在本例中,X=153,也就是那个虚拟的NAT服务器的地址,这个服务器是一台虚拟的NAT服务器,可以ping通它,但是却无法访问到这台虚拟机,因为这同样也是一个系统服务:这时候,我的Guest和Host就可以实现互访了,并且如果我的Host此时已经连接到了Internet,那么我的Guest也就可以连上Internet了。那么Host上的VMwareNetworkAdapterVMnet8虚拟网卡在这里扮演了一个什么角色呢?它仅仅是为Host和NAT虚拟网络提供了一个通信接口,所以,即便在Host中Disable掉这块虚拟网卡,Guest仍然是可以上网的,只是Host无法再访问VMnet8网段,也即是无法访问Guest而已。
关于Host-Only网络
在Host-Only网络中,Host-Only网络被用来设计成一个与外界隔绝的(isolated)网络,其实Host-Only网络和NAT网络非常相似,唯一不同的地方就是在Host-Only网络中,没有用到NAT服务,没有服务器为VMnet1网络做路由,它当然就没有办法访问Internet啦,可是如果此时我的Host要和Guest通信怎么办呢?当然就要用到VMwareNetworkAdapterVMnet1这块虚拟网卡了。
如下图,这是我的Host上的VMwareNetworkAdapterVMnet1虚拟网卡的配置,同样,VMware也为我自动随机分配好了它的IP:
EthernetadapterVMwareNetworkAdapterVMnet1:
Connection-specificDNSSuffix:
Description:VMwareVirtualEthernetAdapterforVMnet1
PhysicalAddress:00-50-56-C0-00-01
DhcpEnabled:No
IPAddress:1921682011
SubnetMask:2552552550
DefaultGateway:
那么如果我把Guest的网络设置成了Host-Only的话,把它的IP获取方式设置为DHCP,它会到虚拟的DHCP服务器上拿到IP,这个DHCP服务器仍然是一个虚拟的DHCP服务器(仅仅是一个系统服务而已),而且在下图中,可以看到,这个DHCP服务器的IP地址仍然是192168X254,这里X=201,因为要和我的VMnet1的网络ID相同。所以,Guest所获得的IP和我的Host的VMwareNetworkAdapterVMnet1虚拟网卡的IP使用同一个网络ID:
WindowsIPConfiguration
HostName:Lineage
PrimaryDnsSuffix:
NodeType:Unknown
IPRoutingEnabled:no
WINSProxyEnabled:No
EthernetadapterHost-Only:
Connection-specificDNSSuffix:
Description:VMwarePCIEthernetAdapter
PhysicalAddress:00-50-58-C0-50-0d
DhcpEnabled:Yes
AutoconfigurerationEnanble:Yes
IPAddress:19216820110
SubnetMask:2552552550
DefaultGateway:
DHCPServer:192168153254
可以看到,在Host-Only网络下,Guest的DefaultGateway被设置为NULL,这是由于没有默认路由器为它到外部网络提供路由的缘故,也即是上边说到的Host-Only网络没有NAT服务器!如果使用routeadd命令加上某个地址做为它的路由器,它仍然不能访问Internet(实际上也没有地址可加)。这样,我的Guest虽然没有办法访问Internet,但是仍然可以和我的Host进行通信,这正是因为我的Host上的VMwareNetworkAdapterVMnet1虚拟网卡起到了作用,它负责和VMnet1网络相连,为我访问Host-Only网络下的Guest提供了通信接口。下图显示了在Host-Only网络中的Guest与我的Host的通信情况:
Pinging1921682011with32bytesofdata:
Replyfrom1921682011:bytes=32timeReplyfrom1921682011:bytes=32timeReplyfrom1921682011:bytes=32timeReplyfrom1921682011:bytes=32time
Pingstatisticsfor1921682011:
Packets:Sent=4,Received=4,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=0ms,Maximum=0ms,Average=0ms
至于为何要把Host-Only网络设置为没有DefaultGateway的方式,这是VMware的设计使然,它就是让我们建立一个与外界隔离(isolated)的网络时而使用的。事实上,如果我足够BT,也可以在Host上来为VMwareNetworkAdapterVMnet1虚拟网卡来做路由。比如,我可以用Windows2000的RRAS来做,这样的话,处于Host-Only网络下的Guest就又可以上网了,它们只需要使用routeadd命令把自己的DefaultGateway指向Host上的VMwareNetworkAdapterVMnet1虚拟网卡即可,不过这样做不推荐,也没有必要
至此,VMware的3种网络,就应该可以理解可以看到,如果想要Guest上网,在3种网络模型中,
最为简单的方式就是NAT,因为它不需要任何的网卡设置,IP地址也可以从虚拟的DHCP服务器来获得,要做的仅仅就是把它的网络设置为NAT方式即可。
至于Bridged模式,则需要额外的IP地址,这有可能会实现不了,因为并不是每个ISP都那么大方。
如果是Host-Only,则又需要设置RRAS,没有几个人会愿意为了让虚拟机上网而换OS的,所以就用NAT最好了。
在这里要强调的一点是,如果设置了Host-Only网络,非要为VMnet1做路由,一定要用RRAS,而不要用WindowsXP或者2000的ICS,因为它会自动把内网的接口地址改为19216801。你在安装虚拟机的时候,VMware不会正好给你的VMwareNetworkAdapterVMnet1虚拟网卡分配为19216801的地址吧?这样的话会造成VMwareNetworkAdapterVMnet1虚拟网卡和VMnet1网段的网络ID不一致,自然,你的Guest就没有办法和Host通信了!
实际上经常还会遇到这样的情况:比如VMware为我分配的网络ID在将来会被我用到,或者嫌VMware为你分配的网络不好(比如它给你分了个1921681480的网络ID),那么可以到这里来修改:
单击VMware的“Host”菜单,选择“VirtualNetworkSettings”
选择“HostVirtualNetworkMapping”中,VMnet1所在的虚拟网络,单击后边的按钮,选择“Subnet”菜单,即可以调整你的网络ID。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)