您的位置:首页 > 理论基础 > 计算机网络

CentOS启动网络提示connect: Network is unreachable(配置静态路由)

2017-07-13 09:33 2096 查看
ls /etc/sysconfig/network-script/ifcfg-eth0

一、看是否在上述目录下存在ifcfg-eth0 这个文件,若存在则按下面的步骤操作:

1.手工配置ip看能不能配置上
ifconfig eth0 172.18.128.143 netmask 255.255.255.0 broadcast 172.18.128.255
route add default gw 172.18.128.1(同一网段可以不要)



直接编辑 vi /etc/sysconfig/network-scripts/ifcfg-eth0

2.service network restart

以往记得在VirtualBox中安装完CentOS后是可以直接使用的,今天安装好了以后发现上不了网,表现为使用ping时提示connect network is unreachable。通过ifconfig发现网卡没有分配IP地址,考虑是DHCP的问题,遂sudo dhclient,发现就能上网了。然而重启以后就又没有IP了,所以还要修改一下etc目录下这个网卡的配置文件(/etc/sysconfig/network-scripts/ifcfg-[网络设备名]),

发现最后一行的ONBOOT选项竟然是no,将其改成yes,然后就正常了。

后面在无意中看到Linux网络配置有添加网关的命令:

route add default gw 192.168.128.2 dev eth0

------

转篇很好的文章,多网卡推荐用第四种方法。

http://blog.sina.com.cn/s/blog_828e50020101ern5.html

CentOS添加永久静态路由

在使用双网卡,同时使用2个网关的时候就需要加一条静态路由了。当然还有很多时候会需要加路由。

操作系统版本centos-6.4 64bit

一:使用route 命令添加

1、使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法:

//添加到主机的路由

# route add –host 192.168.1.11 dev eth0

# route add –host 192.168.1.12 gw 192.168.1.1

//添加到网络的路由

# route add –net 192.168.1.11 netmask 255.255.255.0 dev eth0

# route add –net 192.168.1.11 netmask 255.255.255.0 gw 192.168.1.1

# route add –net 192.168.1.0/24 dev eth1

//添加默认网关

# route add default gw 192.168.2.1

//删除路由

# route del –host 192.168.1.11 dev eth0

2、还可以使用ip命令来添加、删除路由

ip route add default via 172.16.10.2 dev eth0

ip route add 172.16.1.0/24 via 172.16.10.2 dev eth0

格式如下:

ip route

default via gateway dev interface

ip/netmask via gateway dev interface

二:在Linux下设置永久路由的方法:

1.在/etc/rc.local里添加

方法:

route add -net 192.168.3.0/24 dev eth0

route add -net 192.168.2.0/24 gw 192.168.2.254

2.在/etc/sysconfig/network里添加到末尾

方法:

GATEWAY=gw-ip

或者

GATEWAY=gw-dev

3./etc/sysconfig/static-routes :

any net 192.168.3.0/24 gw 192.168.3.254

any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129

如果在rc.local中添加路由会造成NFS无法自动挂载问题,所以使用static-routes的方法是最好的。无论重启系统和service network restart 都会生效。

解决NFS问题的描述:

按照linux启动的顺序,rc.local里面的内容是在linux所有服务都启动完毕,最后才被执行的,也就是说,这里面的内容是在netfs之后才被执行的,那也就是说在netfs启动的时候,服务器上的静态路由是没有被添加的,所以netfs挂载不能成功。

4、在/etc/sysconfig/network-script/route-interface下添加路由(每个接口一个文件,如果没有就创建一个,只能添加针对该接口的路由)

格式如下:

network/prefix via gateway dev intf

例如给eth0添加一个默认网关:

vim /etc/sysconfig/network-scripts/route-eth0

#添加如下内容(可以省略dev eth0)

0.0.0.0/0 via 172.16.10.2 dev eth0

ps:注意这里的掩码是0而不是32,因为这里是网段而不是路由。

保存退出后,service network restart。

使用route -n或netstat -r查看路由表。

[root@localhost ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.16.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 172.16.10.2 0.0.0.0 UG 0 0 0 eth0

默认路由已经被添加到路由表里面了。

注意如果有两块网卡,需要设置默认路由才能访问internet。

所有添加静态路由的方法在centos6.4上面均经过验证,正确无误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: