我希望我能找到这在开始之前,但为时已晚......
我正在运行 CentOS 5.5。
我开始关注这在不同网络上设置两个 NIC 的指南。一切都很顺利,直到我到达这一步:
这部分允许通过良好的接口路由到直接邻居:
ip 路由添加 10.2.0.0 dev eth0 src 10.2.0.1
ip 路由添加 10.1.0.0 dev eth1 src 10.1.0.1
当我尝试执行这些命令时出现以下错误:
RTNETLINK 回答:无效参数
我对服务器设置不是很有经验。但是,我被委派做这件事,所以我寻求帮助。有什么建议吗?
或者,关于如何撤消我迄今为止所做的操作,以便尝试上面列出的其他指南,有什么建议吗?
编辑:我忘了提一下,该服务器还安装了 Webmin 工具,如果这有帮助的话。
答案1
该指南非常复杂,并且不是在 CentOS 中执行此操作的标准方法。
您没有指定网络掩码,所以我猜它假设基于 IP 地址的 A 类,在这种情况下,它们位于同一子网上,第二个路由命令将替换第一个。运行ip addr ls
、ifconfig
、route -n
或netstat -rn
即可查看。
现在,我不确定您要做什么,但最好分步进行。首先,配置接口,然后添加路由。CentOS 配置接口的方法是编辑/etc/sysconfig/network-scripts/ifcfg-eth0
和ifcfg-eth1
。在中配置默认路由。在和/etc/sysconfig/network
中配置其他路由。/etc/sysconfig/network-scripts/route-eth0
route-eth1
以下是我的假设。请进行更改以匹配您的设置。您的 CentOS 机器的 IP 地址为 eth0 的 10.2.0.20 和 eth1 的 10.1.0.20。两者的网络掩码均为 255.255.255.0。eth0 的网关为 10.2.0.1,eth1 的网关为 10.1.0.1。您希望所有流量都通过 eth0,但 10.1.0.0/24 和 10.3.0.0/24 除外,这两个流量通过 eth1。
你ifcfg-eth0
有:
DEVICE=eth0
IPADDR=10.2.0.20
NETMASK=255.255.255.0
BOOTPROTO=static
ONBOOT=yes
你ifcfg-eth1
有:
DEVICE=eth1
IPADDR=10.1.0.20
NETMASK=255.255.255.0
BOOTPROTO=static
ONBOOT=yes
你/etc/sysconfig/network
有:
NETWORKING=yes
HOSTNAME=whatever
GATEWAY=10.2.0.1
你/etc/sysconfig/network-scripts/route-eth1
有:
10.3.0.0/24 via 10.1.0.1
答案2
您的以太网设备有这样的 IP 吗?例如,eth0 有 10.2.0.1 而 eth1 有 10.1.0.1 吗?或者更确切地说 - 这不可能是拼写错误,所以 eth0 必须有 10.1.0.1 而 eth1 必须有 10.2.0.1?