在使用linux虚拟机的时候因为经常有关机的需求,然后重新开机后可能面临这上一次获取的ip被改变,在这里我分享一下在linux
下设置静态ip的经验
1.查看路由状态
[root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.203.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 [root@localhost ~]#
Destination:目标网络或主机。
Gateway:网关地址。
Genmask:目标网络的网络掩码。"255.255.255.255"表示一个主机。"0.0.0.0"表示网关。
Flags:标记。
U、路由被启用。
H、目标是一个主机
G、使用网关。
详情请参考:http://www.cnblogs.com/dongzhiquan/archive/2012/12/26/2834904.html
2.修改网卡设置
可以零时修改:ifconfig eth0 ip地址
修改网卡配置文件并保存:
vim /etc/sysconfig/network-scripts/ifcfg-eth0
可以看到
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
#BOOTPROTO=dhcp
BOOTPROTO=static
ONBOOT=yes
HWADDR=00:0c:29:ed:44:80
修改配置文件
#cary
IPADDR=192.168.203.128
NETMASK=255.255.255.0
GETEWAY=192.168.203.1
注意:BOOTPROTO=static,要改为static方式
3.设置dns
vim /etc/resolv.conf 如果是电信宽带添加 nameserver=8.8.8.8
4.重启网卡
#关掉第一块网卡
ifdown eth0
#激活第一块网卡
ifup eth0
重启网卡后发现可以联通局域网和外网,则静态ip设置成功.
注意:对于大多数情况,这样设置是能够解决问题的
5.在使用centos6.5做服务集群的时候遇到过一个问题,由于公司路由器设置比较特殊
按找上述配置发现可以ping同局域网中的机器,但是无法ping 通 www.baidu.com
笔者猜想可能是dns设置出现了问题
(1)设置全局dns
vim /etc/resolv.conf
文件中添加代码:
nameserver 192.168.100.10
(2)重启网络服务
service network restart
继续 ping www.baidu.com
发现还是服务ping 通www.baidu.com
(3)在网卡中设置dns
vim /etc/sysconfig/network-scripts/ifcfg-eth0 添加dns: DNS1=192.168.100.100
重启网络服务
service network restart
重启后 ping www.baidu.com
能够ping通,静态ip设置成功