
我希望我找到了這在開始之前,但為時已晚......
我跑的是 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?