請問一下各位大大,以下是發生的狀況
我們這邊是A方 另一邊是B
A方是(CentOS)
2: eth0:
inet 61.31.203.52/24 brd 61.31.203.255 scope global eth0
3: eth1:
inet 192.168.220.1/30 brd 192.168.220.3 scope global eth1
B方專線是 192.168.120.1
在我這邊增加路由表之後
route -n為
192.168.120.0 192.168.220.2 255.255.255.252 UG 0 0 0 eth1
192.168.220.0 192.168.220.2 255.255.255.252 UG 0 0 0 eth1
192.168.220.0 0.0.0.0 255.255.255.252 U 0 0 0 eth1
61.31.203.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1
0.0.0.0 61.31.203.62 0.0.0.0 UG 0 0 0 eth0
我這邊ping的到對方192.168.120.1 實際為址
對方卻只能ping到我這邊的gateway 192.168.220.2
ping不到220.1
不知道是哪個環節出錯了
A 跟 B 中間是怎樣連線的? VPN 嗎? 另外除了 A 主機跟 B (這是什麼設備?)外, 中間還有哪些設備(例如 192.168.220.2 是誰管的?), 以及每台設備的路由表也麻煩提供一下.
還有這兩行看起來怪怪的, 同一個 subnet 為什麼會把封包送到 192.168.220.2 處理?
<pre class="c" name="code">192.168.220.0 192.168.220.2 255.255.255.252 UG 0 0 0 eth1
192.168.220.0 0.0.0.0 255.255.255.252 U 0 0 0 eth1
A跟B是VPN
A端是linux192.168.220.1專線到B端 cisco 192.168.120.1
220.2與120.2 都是中華電信那裏
透過中華電信做轉換的
我只有辦法取得我這邊的路由表 就是上面提供那個了
麻煩分別做幾件測試:
0. 先確認 A 主機無防火牆.
請 B 端用 tracert -n 192.168.220.1 看看. 把結果記下來.
可能有兩種情況:
a. 有兩個點一直在 loop -> 路由表設定錯誤. (可能是 A 主機或中華電信)
b. 到某一個點之後, 一直是 * * * 或 Request Time Out -> A 主機防火牆擋掉, 或該主機之後的路由表有問題
把 A 主機這條弄掉: 192.168.220.0 192.168.220.2 255.255.255.252 UG 0 0 0 eth1
請 B 端再用 tracert -n 192.168.220.1 看看. 把結果記下來.
請中華電信從機房 tracert -n 192.168.220.1 看看. 把結果記下來.
如果 A 是你能控制的,那幹嘛不把 192.168.220.1 設為 192.168.120.11 跟 B 同網域就好了?也許會因為同網域,192.168.120.2 這個中華電信的設備就會轉送封包了。
就算 192.168.220.1 一定得存在,還是可以多設一個 eth1:1 為 192.168.120.11 唷。
誠如slime大所說,
您可以先檢查A主機(CentOS)是否有擋ping,
可以使用同一網段的其他設備ping看看。
網路架構猜測大概如下:
覺得這段不用
192.168.220.0 192.168.220.2 255.255.255.252 UG 0 0 0 eth1
直連會自已產生路由
192.168.220.0 0.0.0.0 255.255.255.252 U 0 0 0 eth1
另生 centOs 有給 ping 嗎?