ホストシステムからネットワークにアクセスできません(ゲストシステムが稼働しています)。

ホストシステムからネットワークにアクセスできません(ゲストシステムが稼働しています)。

私のサーバーを最新バージョンのXen(Debianの場合4.11.1)にアップデートした後、私のホストシステムはインターネット接続を使用できません(ゲストシステムからアクセスできます)。問題がXenアップデートに関連しているのか、それとも同時に実行した他のアップデートに関連しているのかわかりません。 :-(

インターネット接続のためにxenbr0、私はインターフェースに接続されたブリッジ()を使用します。これはかなり多くのクライアントシステムでも使用されます。eth0ゲストシステムはこのブリッジを使用してインターネットにアクセスできます。xenbr1内部通信にのみ使用され、外部インターフェイスには接続されていない2番目のブリッジ()があります。

# brctl show
bridge name bridge id       STP enabled interfaces
xenbr0      8000.d6fc6a691328   no      eth0
                                            vif3.0
                                        vif4.0
                                         vif5.0
xenbr1      8000.b226a874c5c4   no      vif1.0
                                         vif2.0
                                         vif4.1
                                         vif6.0

したがって、eth0インターフェイスには IP 設定はありませんが、xenbr0インターフェイスには IP アドレスがあります。

# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 44:8a:5b:29:e6:40  txqueuelen 1000  (Ethernet)

xenbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 148.251.66.43  netmask 255.255.255.224  broadcast 148.251.66.63
        inet6 fe80::d4fc:6aff:fe69:1328  prefixlen 64  scopeid 0x20<link>
        inet6 2a01:4f8:202:302a::2  prefixlen 64  scopeid 0x0<global>
        ether d6:fc:6a:69:13:28  txqueuelen 1000  (Ethernet)

xenbr1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.0.1  netmask 255.255.255.0  broadcast 172.16.0.255
        inet6 fe80::b026:a8ff:fe74:c5c4  prefixlen 64  scopeid 0x20<link>
        inet6 fd1a:1e62:cd84:83f8:172:16:0:1  prefixlen 64  scopeid 0x0<global>
        ether b2:26:a8:74:c5:c4  txqueuelen 1000  (Ethernet)

デフォルトパスはxenbr0インターフェイスを介して設定されます。

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         148.251.66.33   0.0.0.0         UG    0      0        0 xenbr0
148.251.66.32   0.0.0.0         255.255.255.224 U     0      0        0 xenbr0
172.16.0.0      0.0.0.0         255.255.255.0   U     0      0        0 xenbr1

他のコンピュータがパブリックアドレス(NATなし)を使用しているため、IP転送は構成されていません。

# cat /proc/sys/net/ipv4/ip_forward
0

ファイアウォールが構成されていません(nft list ruleset出力なし、iptablesインストールされていません)。

ゲートウェイへのping(148.251.66.33)はゲストシステムでは機能しますが、ホストでは機能しません。外部アドレスをpingするのと同じです。

次のバージョンを実行してください。

# cat /proc/version 
Linux version 5.2.0-2-amd64 ([email protected]) (gcc version 8.3.0 (Debian 8.3.0-21)) #1 SMP Debian 5.2.9-2 (2019-08-21)
# dpkg --list "xen-*"
ii  xen-hypervisor-4.11-amd64 4.11.1+92-g6c33308a8d-2+b1 amd64        Xen Hypervisor on AMD64
ii  xen-hypervisor-common     4.11.1+92-g6c33308a8d-2    all          Xen Hypervisor - common files
ii  xen-utils-4.11            4.11.1+92-g6c33308a8d-2+b1 amd64        XEN administrative tools
ii  xen-utils-common          4.11.1+92-g6c33308a8d-2+b1 amd64        Xen administrative tools - common files
# brctl --version
bridge-utils, 1.6
# ip -V
ip utility, iproute2-ss190708
# nft -v
nftables v0.9.2 (Scram)

私は何を見逃していますか?どんな助けでも大変感謝します!

答え1

ついに解決策を見つけました。アップデートやカーネルアップデートに関連しているようですbridge-utils(残念ながら、特定のバージョン/アップデートを正確に知ることはできません)。

行動今後ブリッジが自動的にインターフェイスのMACアドレスを使用する場合の動作後ろに更新内容は、ブリッジがランダムに生成されたMACアドレス(ネットワーク側でブロックされている)を割り当てるということです。

ip link set xenbr0 address 44:8a:5b:29:e6:40ブリッジのMACアドレス()を設定すると、ネットワークアクセスは期待どおりに機能します。

関連情報