2つのUbuntuシステム間のマルチキャスト問題

2つのUbuntuシステム間のマルチキャスト問題

ネットワークケーブルを介して接続された2つのUbuntu 16.04システム(マシンAとB)があります。システムAがマルチキャストを作成しています。マルチキャストはコンピュータBに到達できません。その理由が何であるかを知っている人はいますか?

いくつかの法医学情報は次のとおりです。

どちらのシステムにもアクティブなファイアウォールはありません。たとえば、システムAには次のものが表示されます。

root@linux:~# iptables --list
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

マシンAとBの接続インターフェイスはマルチキャストを送信するように構成されています。たとえば、マシンAは次のように表示します。

enp0s31f6 Link encap:Ethernet  HWaddr 90:1b:0e:c4:af:e1  
          inet addr:192.168.10.3  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::921b:eff:fec4:afe1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9221 errors:0 dropped:0 overruns:0 frame:0
          TX packets:25793 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:890075 (890.0 KB)  TX bytes:8214828 (8.2 MB)
          Interrupt:16 Memory:f7100000-f7120000 

enp1s0    Link encap:Ethernet  HWaddr 90:1b:0e:ae:a2:fa  
          inet addr:169.254.1.2  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Memory:f7000000-f707ffff 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING MULTICAST  MTU:65536  Metric:1
          RX packets:106353 errors:0 dropped:0 overruns:0 frame:0
          TX packets:106353 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:20525233 (20.5 MB)  TX bytes:20525233 (20.5 MB)

相互作用enp0s31f6接続済み(実行中)Aのルーティングテーブルは、次のことを示しています。

root@linux:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.10.1    0.0.0.0         UG    100    0        0 enp0s31f6
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 enp1s0
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 enp0s31f6

マシンAのtcpdumpは、発信マルチキャストトラフィックを示しています。

15:47:37.420032 IP 192.168.10.3.2222 > 239.0.0.222.2222: UDP, length 327
15:48:37.415102 IP 192.168.10.3.2222 > 239.0.0.222.2222: UDP, length 327
15:49:37.417969 IP 192.168.10.3.2222 > 239.0.0.222.2222: UDP, length 327

マシンBのWiresharkはマルチキャストトラフィックを表示しません。

挨拶、

耳道

もっと調べました。 UbuntuシステムAとBの間にスイッチが取り付けられ、スイッチに接続されたMacラップトップもあります。 MacはBマシンのDHCPサーバーからIPを受け取り、Bマシンもインターネットに接続してゲートウェイとして機能したため、インターネットに接続できました。

MacでWiresharkを起動するとマルチキャストパケットが表示されますが、Bではどのパケットも検出できません。また、Aでiperfを起動しましたが、生成されたすべてのパケットをMacでは表示できますが、Bでは表示できません。

iperf -c 239.0.0.222 -p 2222 -u -T 32 -t 3 -i 1

マシンA(マルチキャストパケット生成)

root@linux:~# cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
root@linux:~# uname -a
Linux linux 4.4.0-93-generic #116-Ubuntu SMP Fri Aug 11 21:17:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

マシンB

root@testserver:~# cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
root@testserver:~# uname -a
Linux testserver 4.10.0-37-generic #41~16.04.1-Ubuntu SMP Fri Oct 6 22:42:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

マシンBにはファイアウォールも有効になっていません。

root@testserver:~# iptables --list
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

マシンBには、次のネットワークインターフェイスがあります。

eno1      Link encap:Ethernet  Hardware Adresse 74:d4:35:3d:13:14  
          inet Adresse:192.168.199.202  Bcast:192.168.199.255  Maske:255.255.255.0
          inet6-Adresse: fe80::e45b:3ea5:a1ca:2cf7/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:2541323 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:1958194 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:2907121035 (2.9 GB)  TX-Bytes:1743378563 (1.7 GB)
          Interrupt:20 Speicher:f0c00000-f0c20000 

enp12s0   Link encap:Ethernet  Hardware Adresse 00:13:3b:0f:71:2c  
          inet6-Adresse: fe80::213:3bff:fe0f:712c/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:22 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:2721 (2.7 KB)

enp14s0   Link encap:Ethernet  Hardware Adresse 00:13:3b:0f:71:2d  
          inet Adresse:192.168.30.1  Bcast:192.168.30.255  Maske:255.255.255.0
          inet6-Adresse: fe80::213:3bff:fe0f:712d/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:24903 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:28057 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:2617514 (2.6 MB)  TX-Bytes:3973717 (3.9 MB)

enp17s0   Link encap:Ethernet  Hardware Adresse 00:13:3b:0f:6d:19  
          UP BROADCAST MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:0 (0.0 B)

enp19s0   Link encap:Ethernet  Hardware Adresse 00:13:3b:0f:6d:1a  
          inet Adresse:192.168.40.1  Bcast:192.168.40.255  Maske:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:0 (0.0 B)

enp3s0    Link encap:Ethernet  Hardware Adresse 00:0a:cd:2f:f0:cc  
          inet6-Adresse: fe80::20a:cdff:fe2f:f0cc/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:1308 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:120880 (120.8 KB)

enp4s0    Link encap:Ethernet  Hardware Adresse 00:0a:cd:2f:f0:cd  
          inet Adresse:192.168.20.1  Bcast:192.168.20.255  Maske:255.255.255.0
          inet6-Adresse: fe80::20a:cdff:fe2f:f0cd/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:59234 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:69110 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:6492424 (6.4 MB)  TX-Bytes:9395771 (9.3 MB)

enp5s0    Link encap:Ethernet  Hardware Adresse 00:0a:cd:2f:f0:ce  
          inet6-Adresse: fe80::20a:cdff:fe2f:f0ce/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:0 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:31 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:3536 (3.5 KB)

enp6s0    Link encap:Ethernet  Hardware Adresse 00:0a:cd:2f:f0:cf  
          inet Adresse:192.168.10.1  Bcast:192.168.10.255  Maske:255.255.255.0
          inet6-Adresse: fe80::20a:cdff:fe2f:f0cf/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
          RX-Pakete:822669 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:1701383 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:272743664 (272.7 MB)  TX-Bytes:2164337194 (2.1 GB)

lo        Link encap:Lokale Schleife  
          inet Adresse:127.0.0.1  Maske:255.0.0.0
          inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
          UP LOOPBACK RUNNING  MTU:65536  Metrik:1
          RX-Pakete:7895 Fehler:0 Verloren:0 Überläufe:0 Fenster:0
          TX-Pakete:7895 Fehler:0 Verloren:0 Überläufe:0 Träger:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:1222431 (1.2 MB)  TX-Bytes:1222431 (1.2 MB)

マシンBはインターフェイスを介して接続されます。enpu6s0インターネット接続インターフェースの提供eno1

ネットワークインターフェイスenp3s0 enp4s0 enp5s0とenp6s0は4ポートネットワークカードにあります。

カードにはRTL 8168ネットワークカードが含まれています。

答え1

私はこの問題を「解決」しました。問題は、Wiresharkインスタンスが同時に複数のインターフェイスを監視している場合、WiresharkはLinuxシステムでマルチキャストパケットを表示できないことです。 Wiresharkを使用して1つのインターフェイスのみをスニッフィングすると、マルチキャストパケットを表示できます。おそらく、これはRTL 8169ネットワークカードLinuxドライバの制限です。

しかし、私は次の問題に直面したので、マルチキャストパケットを検索しようとしています。マルチキャストパケットがインターフェイスXに入ると、送信インターフェイスYではそれを見ることができません。新しいスレッドを使用して回答をリクエストします。

挨拶、

耳道

答え2

2つのサーバーノード構成を見てみましょう。

引用するRFC5771

構成するマルチキャストIPアドレスは192.168.10.3/24にすることはできません。

通常、範囲内でなければなりません。224.0.0.0/4(224.0.0.0から239.255.255.255まで)

次のようになります。224.168.10.3

関連情報