Xen機器可以看到子網路上的其他機器,但看不到網關

Xen機器可以看到子網路上的其他機器,但看不到網關

編輯:已解決

看來,切換靜態 MAC 定義與將 vif/0 和 vif/0 靜態映射到 eth0 和 eth1 相結合(在 domU 中,根據http://tomclegg.net/xen-eth0-renamed) 完成了。

我正在我的 xen domU 上解決這個奇怪的問題(至少對我來說)。

這是基本佈局:

-------- -------------
| | | XEN d0 |
|一個 | | --------- |
| | | | xen dU| |
-------- -------------

主機 A 是不相關的計算機,IP 為 213.226.13x.yyy/24

XEN d0 是 IP 213.226.13x.zzz/24 的管理程序

XEN dU 是客戶作業系統(debian etch)我正在嘗試設定以查看網關,它的 IP 為 213.226.13x.jjj/24

網關是 213.226.13x.1。

所有機器都在同一子網路上。問題是 gues OS 無法 ping 通網關,但可以 ping dom0 和主機 A 沒有問題。

dom0 和主機 A 可以互相 ping 通網關和來賓。

我在主機A上嘗試過的事情:

ARP 平

$ arping -c 1 -i eth0 213.226.13x.1

ARPING 213.226.13x.1
00:02:b3:e8:30:7e (213.226.13x.1) 中的 60 個位元組:索引=0 時間=224.113 usec

(奇怪的是, arping -c 1 -i eth0 00:02:b3:e8:30:7e 不起作用)。

廣播 ping

$ ping -b 213.226.13x.255

警告:ping 廣播位址
PING 213.226.13x.255 (213.226.13x.255) 56(84) 位元組資料。
來自 213.226.13x.18 的 64 個位元組:icmp_seq=1 ttl=64 時間=0.463 ms
來自 213.226.13x.28 的 64 個位元組:icmp_seq=1 ttl=64 時間=0.478 ms(DUP!)

xen guest 上的相同內容不會回傳任何結果(arping 和 ping -b)。

主機 A 和 xen guest 上的 $ iptables -L 輸出相同(零規則):

鏈輸入(策略接受)
目標 prot 選擇來源目的地         

鏈轉送(策略接受)
目標 prot 選擇來源目的地         

鏈輸出(策略接受)
目標 prot 選擇來源目的地

截至目前我已經排除的事情:

物理連結損壞 - XEN dom0 也無法工作,但事實並非如此。

網關上的防火牆 - 我的 ARP ping 仍然可以通過嗎?

xen guest 上的防火牆 - iptables -L 沒有規則

路由問題 - 不確定這個問題,但如果路由表混亂,我將無法 ping 通主機 A 和 dom0,不是嗎?

很感謝任何形式的幫助

編輯1:附加資訊

我沒有使用 xen 的橋接腳本,而是使用 network-dummy 為 eth1 手動建立 br-eth1,這是本機網路的介面。 eth0 是 XEN 安裝為 eth0 介面所建立的橋接器(重新命名為 peth0 AFAIK)。

下面是 /etc/network/interfaces 在 dom0 上的樣子:

# 環回網路介面
自動定位
iface lo inet環回

自動 eth0
iface eth0 inet 靜態
  地址 213.226.13x.zzz
  網路遮罩 255.255.255.0
  網關 213.226.13x.1

自動 eth1
iface eth1 inet 手冊

自動 br-eth1
iface br-eth1 inet 靜態
  地址192.168.1.11
  網路遮罩 255.255.255.0

和“brctl show”(domU 關閉)..

橋接名稱 橋接器 ID 啟用 STP 的介面
br-eth1 8000.000423d0d059 沒有 eth1
eth0 8000.000423d0d058 沒有 peth0

EDIT2:附加資訊

domU 的 XEN 配置:

#
# 引導程式+核心+記憶體大小
#
引導程式 = '/usr/lib/xen-3.2-1/bin/pygrub'
核心 = '/boot/vmlinuz-2.6.18-5-xen-686'
虛擬磁碟 = '/boot/initrd.img-2.6.18-5-xen-686'
內存='3072'
vcpu = '4'

#
# 磁碟裝置。
#
root = '/dev/sda1 ro'
磁碟 = [
                  'phy:/dev/vg_main/網域磁碟,sda1,w',
                  'phy:/dev/vg_main/domain-swap,sda2,w',
              ]


#
# 主機名
#
名稱 = '...'

#
# 聯網
#
振動頻率 = [
        'ip=213.226.13x.jjj,mac=00:16:3E:83:0B:BC,bridge=eth0',
        'ip=192.168.1.12,mac=00:16:3E:83:0B:AC,bridge=br-eth1',
]

#
# 行為
#
on_poweroff = '銷毀'
on_reboot = '重新啟動'
on_crash = '重新啟動'

答案1

  1. 顯示您的 xen 橋接器/路由腳本(實際上為 domU 提供網路)。
  2. 當您從 domU ping 主機 A 和網關時,dom0 外部介面上的 tcpdump 輸出有什麼不同?

相關內容