centos的网络/路由问题

centos的网络/路由问题

我的 centos 盒子有问题。升级几个软件包后,一段时间后网络就断了。

发生的情况是 eth0 不再起作用。我在日志文件中发现的唯一错误是这个:

Invalid IP4 netmask 'NETMASK0' "0.0.0.0"

经过一番研究,我发现这是 route-eth0 配置文件的问题,因为网络启动了,但路由没有添加。如果我手动添加它们,那么一切都会正常。

没有它,路由表就会变得很奇怪:

 [root@CentOS-70-64-minimal network-scripts]# route -e
 Kernel IP routing table
 Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
 default         gateway         0.0.0.0         UG        0 0          0 eth1
 default         gateway         0.0.0.0         UG        0 0          0 eth0
 gateway         0.0.0.0         255.255.255.255 UH        0 0          0 eth0
 CentOS-70-64-mi 0.0.0.0         255.255.255.255 UH        0 0          0 eth0
 link-local      0.0.0.0         255.255.0.0     U         0 0          0 eth0
 188.40.24.199   gateway         255.255.255.255 UGH       0 0          0 eth0
 192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1

它是 CentOS Linux 版本 7.2.1511(核心)。

/etc/sysconfig/network-scripts/ifcfg-eth0:

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
HWADDR=44:8A:5B:D8:74:B3
IPADDR=136.243.34.136
NETMASK=255.255.255.255
SCOPE="peer 136.243.34.129"
IPV6INIT=yes
IPV6ADDR=2a01:4f8:212:283::2/64
IPV6_DEFAULTGW=fe80::1
IPV6_DEFAULTDEV=eth0

/etc/sysconfig/网络脚本/route-eth0

# routing for eth0
ADDRESS0=0.0.0.0
NETMASK0=0.0.0.0
GATEWAY0=136.243.34.129

顺便说一句,eth1 工作正常。此外,在其他服务器上,所有接口都使用相同的配置。

问题可能是因为它是centos 6然后更新到centos 7。也许留下了一些设置并导致问题。

因为站点是活动的,所以我做了临时解决方案,将这一行添加到 crontab 以每分钟运行一次:

/etc/sysconfig/network-scripts/ifup-routes eth0

答案1

如果您配置了范围点对点链路(因为NETMASK=255.255.255.255),那么您希望通过 eth0 路由所有流量:

IPADDR=136.243.34.136 NETMASK=255.255.255.255 SCOPE="peer 136.243.34.129"

我不明白你通过 eth1 配置默认路由的目的是什么?

我认为你必须更改 eth0 接口的配置:

IPADDR=136.243.34.136
NETMASK=255.255.255.127

并删除eth0接口的路由配置文件。我看到两个接口连接到两个独立的提供者。这就是为什么我建议你使用ip路由2。如何配置你可以看看在 Linux 中配置多个默认路由

答案2

我建议你使用nmtui界面来设置IP、路由、DNS等,这会自动更新相应的配置文件。

nmtui与 一起打包NetworkManager-tui-1.4.0-12.el7.x86_64 rpm

答案3

/etc/sysconfig/network-scripts/route-eth0不是配置默认网关的正确位置,该文​​件应该仅用于其他静态路由。你应该GATEWAY=/etc/sysconfig/network-scripts/ifcfg-eth0或中有一行ifcfg-eth1,而不是两者都有。如果没有一些高级路由,则具有多个默认路由将无法像输出route所示那样工作。

相关内容