Ubuntu

基本網路:Centos 伺服器路由器 + Ubuntu 客戶端設置.. 無法從客戶端訪問外部世界

  • April 27, 2012

我正在嘗試使用兩個 NIC 作為路由器來設置我的 Centos 伺服器。eth0 連接到外部世界,eth1 連接到 Ubuntu 客戶端。

這是伺服器上的 eth0:

DEVICE=eth0
BOOTPROTO=dhcp 
ONBOOT=yes
TYPE=Ethernet

伺服器上的 eth1:

DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.0.10 # a free address on my network
ONBOOT=yes
TYPE=Ethernet

我的伺服器開啟了 IPv4 數據包轉發,而我的 iptables 僅包含:

# iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
# iptables --append FORWARD --in-interface eth1 -j ACCEPT

我的 Ubuntu 客戶端有這個/etc/network/interfaces

auto lo
iface lo inet loopback

iface eth0 inet dhcp
  gateway 192.168.0.10

但我無法從伺服器為我的客戶獲得 Internet 連接。我什至無法從客戶端 ping 我的伺服器:

$ ping 192.168.0.10
Destination Host Unreachable

如果您發布的配置正確,我是唯一注意到 Centos 伺服器上的 eth1 和客戶端上的 eth0 共享相同 IP 的人嗎?我的習慣是,如果我要使用一台機器作為 linux 網關,我通常使用 .1 作為最後一個八位字節。所以伺服器上的 eth1 是 192.168.0.1,客戶端上的 eth0 是 192.168.0.10。當然,您必須route add default gw 192.168.0.1在客戶端上輸入網關的路由。稍後我會再次查看您的 iptables 設置,以檢查我是否看到任何內容。

在使用 dhcp 的伺服器上使用 eth0,如果應該從 ISP 獲取它需要的一切,所以那裡沒有任何問題……(哦,你不應該對路由或 iptables 做任何事情來 ping Centos 路由器。路由並且 iptables 僅在嘗試訪問外部世界時發揮作用,所以讓我們一次做一件事,然後讓客戶端先與路由器通信。IP 衝突可能是阻止這種情況的原因。)祝你好運! !

引用自:https://serverfault.com/questions/377672