在公司使用虚拟机准备弄个linux集群测点东西,无奈ip一直变来变去,只好修改成固定的,中间走点弯路,做一下记录(我这一开始是NAT模式,dhcp自动获取ip,改的结果是NAT模式,static静态设置ip)。
1.查看虚拟机的网关
- 依次点击虚拟机左上角的编辑——虚拟网络编辑器——NAT模式(注意:网络有桥接,NAT,host-only的连接方式,我这用的是NAT的)——NAT设置——点开的对话框中网关(自己也可以对这个网关修改),记下来等会用。
2.修改IP地址
使用vim编辑器执行下面命令修改ip:1
vim /etc/sysconfig/network-scripts/ifcfg-eth0
在打开的页面配置成这样(有的有双引号,有的无,没有关系)1
2
3
4
5
6
7
8
9
10DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:F5:26:26"
BROADCAST=192.168.85.255
IPADDR=192.168.85.100
NETMASK=255.255.255.0
GATEWAY=192.168.85.1
NM_CONTROLLED="no"
ONBOOT="yes"
TYPE="Ethernet"
下面几项必须要配置,其它的使用默认即可。
BOOTPROTO=static 默认的是dhcp,这里用static,意思是使用静态ip。
NETMASK=255.255.255.0 子网掩码,配置成255.255.255.0就可以。
GATEWAY=192.168.85.1 网关地址,就是第一步我让记下的那个地址。
ONBOOT=yes 开机即使用这套配置
NM_CONTROLLED=no 不允许Network Manager管理网络(这里有坑,我下面会说)。
3.添加nameserver
在执行完上一步之后,我在网上搜到要通过以下方式再设置一下网关,按理说在上面配置完之后已经不需要了,我不太清楚这二者是否有必然的联系,如果你那里设置完不生效,也可以每一步都按我这来。
设置网关
1
route add default gw 192.168.85.1
添加nameserver
1
2
3vi /etc/resolv.conf
在文件末尾追加,这个ip就是上面的网关
nameserver 192.168.85.1
4.不允许Network Manager管理网络
这里解释一下为什么第二步设置NM_CONTROLLED=no ,如果不设置这个,你会发现在你执行完service network restart 这条命令之后第三步设置的nameserver什么都没有了,导致无法联网,换言之,如果你让Network Manager管理网络了,则/etc/resolv.conf 文件每次重启都会被还原。现在可以执行1
service network restart
重启网络服务,然后执行1
ping baidu.com
测试配置结果。
彻底废掉Network Manager
1 | chkconfig NetworkManager off |
参考文档:http://blog.csdn.net/q_l_s/article/details/50729805
后记:
今天又发现一个问题,开机用xshell连不通虚拟机了,ping不通虚拟机,但是虚拟机里面的linux可以上网,也可以ping通我的window ip,搜索之后得出以下解决方案:因为公司网络我用的是自动获取ip,导致我今天来之后VMnet8 ip变成了其它的,与我设置的linux静态ip192.168.85.100不在同一个网段内,所以ping不通,将window电脑中VMnet8网卡的ip设置成固定ip,例如192.168.85.50即可,问题解决! 2017-12-08