documentation:examples:multicast_with_pim-sm
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| documentation:examples:multicast_with_pim-sm [2019/11/08 19:22] – [Checking NIC drivers and Bhyve compatibility with multicast] olivier | documentation:examples:multicast_with_pim-sm [2025/10/02 17:52] (current) – [PIM neighbors] olivier | ||
|---|---|---|---|
| Line 21: | Line 21: | ||
| More information on these BSDRP lab scripts available on [[documentation: | More information on these BSDRP lab scripts available on [[documentation: | ||
| - | Start the lab with 4 routers | + | Start the lab with 4 routers: |
| < | < | ||
| - | tools/ | + | tools/ |
| - | BSD Router Project (http:// | + | BSD Router Project (https:// |
| Setting-up a virtual lab with 4 VM(s): | Setting-up a virtual lab with 4 VM(s): | ||
| - | - Working directory: /root/ | + | - Working directory: /home/ |
| - | - Each VM has 1 core and 512M RAM | + | - Each VM has a total of 1 (1 cores and 1 threads) and 1G RAM |
| - | - Emulated NIC: e1000 | + | - Emulated NIC: virtio-net |
| + | - Boot mode: UEFI | ||
| - Switch mode: bridge + tap | - Switch mode: bridge + tap | ||
| - 0 LAN(s) between all VM | - 0 LAN(s) between all VM | ||
| - Full mesh Ethernet links between each VM | - Full mesh Ethernet links between each VM | ||
| VM 1 has the following NIC: | VM 1 has the following NIC: | ||
| - | - em0 connected to VM 2 | + | - vtnet0 |
| - | - em1 connected to VM 3 | + | - vtnet1 |
| - | - em2 connected to VM 4 | + | - vtnet2 |
| VM 2 has the following NIC: | VM 2 has the following NIC: | ||
| - | - em0 connected to VM 1 | + | - vtnet0 |
| - | - em1 connected to VM 3 | + | - vtnet1 |
| - | - em2 connected to VM 4 | + | - vtnet2 |
| VM 3 has the following NIC: | VM 3 has the following NIC: | ||
| - | - em0 connected to VM 1 | + | - vtnet0 |
| - | - em1 connected to VM 2 | + | - vtnet1 |
| - | - em2 connected to VM 4 | + | - vtnet2 |
| VM 4 has the following NIC: | VM 4 has the following NIC: | ||
| - | - em0 connected to VM 1 | + | - vtnet0 |
| - | - em1 connected to VM 2 | + | - vtnet1 |
| - | - em2 connected to VM 3 | + | - vtnet2 |
| To connect VM' | To connect VM' | ||
| - | - VM 1 : cu -l / | + | - VM 1 : sudo cu -l / |
| - | - VM 2 : cu -l / | + | - VM 2 : sudo cu -l / |
| - | - VM 3 : cu -l / | + | - VM 3 : sudo cu -l / |
| - | - VM 4 : cu -l / | + | - VM 4 : sudo cu -l / |
| </ | </ | ||
| Line 64: | Line 65: | ||
| | | ||
| | | ||
| - | ifconfig_em0="inet 10.0.12.1/ | + | ifconfig_vtnet0="inet 10.0.12.1/ |
| | | ||
| service hostname restart | service hostname restart | ||
| Line 77: | Line 78: | ||
| < | < | ||
| sysrc hostname=VM2 \ | sysrc hostname=VM2 \ | ||
| - | ifconfig_em0="inet 10.0.12.254/ | + | ifconfig_vtnet0="inet 10.0.12.254/ |
| - | ifconfig_em1="inet 10.0.23.2/ | + | ifconfig_vtnet1="inet 10.0.23.2/ |
| | | ||
| | | ||
| Line 100: | Line 101: | ||
| < | < | ||
| sysrc hostname=VM3 \ | sysrc hostname=VM3 \ | ||
| - | ifconfig_em1="inet 10.0.23.3/ | + | ifconfig_vtnet1="inet 10.0.23.3/ |
| - | ifconfig_em2="inet 10.0.34.254/ | + | ifconfig_vtnet2="inet 10.0.34.254/ |
| | | ||
| | | ||
| Line 122: | Line 123: | ||
| | | ||
| | | ||
| - | ifconfig_em2="inet 10.0.34.4/ | + | ifconfig_vnet2="inet 10.0.34.4/ |
| | | ||
| service hostname restart | service hostname restart | ||
| Line 155: | Line 156: | ||
| On the direct connected VM2, start to check if in non-promiscious mode it sees mcast packets comming: | On the direct connected VM2, start to check if in non-promiscious mode it sees mcast packets comming: | ||
| < | < | ||
| - | [root@VM2]~# | + | [root@VM2]~# |
| tcpdump: verbose output suppressed, use -v or -vv for full protocol decode | tcpdump: verbose output suppressed, use -v or -vv for full protocol decode | ||
| - | listening on em0, link-type EN10MB (Ethernet), capture size 262144 bytes | + | listening on vtnet0, link-type EN10MB (Ethernet), capture size 262144 bytes |
| 15: | 15: | ||
| 15: | 15: | ||
| Line 169: | Line 170: | ||
| < | < | ||
| - | [root@VM2]~# | + | [root@VM2]~# |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ||
| Server listening on UDP port 5001 | Server listening on UDP port 5001 | ||
| Line 211: | Line 212: | ||
| < | < | ||
| - | [root@VM2]~# | ||
| - | Virtual Interface Table ====================================================== | ||
| - | Vif Local Address | ||
| - | --- --------------- | ||
| - | 0 10.0.12.254 | ||
| - | 1 10.0.23.2 | ||
| - | 2 10.0.12.254 | ||
| - | | + | root@VM2:~ # pimctl show |
| - | Multicast Routing Table ====================================================== | + | PIM Interface Table |
| - | --------------------------------- (*,*,G) ------------------------------------ | + | Interface |
| - | Number of Groups: | + | vtnet0 |
| - | Number of Cache MIRRORs: 0 | + | vtnet1 |
| - | ------------------------------------------------------------------------------ | + | |
| + | PIM Neighbor Table | ||
| + | Interface | ||
| + | vtnet1 | ||
| + | |||
| + | Multicast Routing Table | ||
| + | Source | ||
| + | 10.0.12.1 | ||
| + | |||
| + | |||
| + | Number of Groups | ||
| + | Number of Cache MIRRORs : 0 | ||
| + | |||
| + | PIM Candidate Rendez-Vous Point Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| + | |||
| + | Current BSR address: 10.0.23.3 | ||
| + | |||
| + | PIM Rendez-Vous Point Set Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| </ | </ | ||
| Line 231: | Line 248: | ||
| < | < | ||
| - | [root@VM3]~# pimd -r | + | root@VM3:~ # pimctl show |
| - | Virtual Interface Table ====================================================== | + | |
| - | Vif Local Address | + | |
| - | --- --------------- | + | |
| - | 0 10.0.23.3 | + | |
| - | 1 10.0.34.254 | + | |
| - | 2 10.0.23.3 | + | |
| - | Vif SSM Group Sources | + | PIM Interface Table |
| + | Interface | ||
| + | vtnet1 | ||
| + | vtnet2 | ||
| - | Multicast Routing Table ====================================================== | + | PIM Neighbor Table |
| - | --------------------------------- (*,*,G) ------------------------------------ | + | Interface |
| - | Number of Groups: 0 | + | vtnet1 |
| - | Number of Cache MIRRORs: 0 | + | |
| - | ------------------------------------------------------------------------------ | + | Multicast Routing Table |
| + | Source | ||
| + | |||
| + | Number of Groups | ||
| + | Number of Cache MIRRORs : 0 | ||
| + | |||
| + | PIM Candidate Rendez-Vous Point Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| + | |||
| + | Current BSR address: 10.0.23.3 | ||
| + | |||
| + | PIM Rendez-Vous Point Set Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| </ | </ | ||
| Line 255: | Line 285: | ||
| < | < | ||
| [root@VM2]~# | [root@VM2]~# | ||
| - | em0: | + | vtnet0: |
| inet 10.0.12.2 | inet 10.0.12.2 | ||
| igmpv2 | igmpv2 | ||
| Line 278: | Line 308: | ||
| group ff02: | group ff02: | ||
| mcast-macaddr 33: | mcast-macaddr 33: | ||
| - | em1: | + | vtnet1: |
| inet 10.0.23.2 | inet 10.0.23.2 | ||
| igmpv2 | igmpv2 | ||
| Line 382: | Line 412: | ||
| PIM daemon should be updated: | PIM daemon should be updated: | ||
| < | < | ||
| - | [root@VM2]~# | + | [root@VM2]~# |
| - | Virtual Interface Table ====================================================== | + | pimctl: Sending cmd show: No error: |
| - | Vif Local Address | + | |
| - | --- --------------- | + | |
| - | 0 10.0.12.254 | + | |
| - | 1 10.0.23.2 | + | |
| - | 2 10.0.12.254 | + | |
| - | Vif SSM Group Sources | + | PIM Interface Table |
| + | Interface | ||
| + | vtnet0 | ||
| + | vtnet1 | ||
| - | Multicast Routing | + | PIM Neighbor |
| - | ----------------------------------- (S,G) ------------------------------------ | + | Interface |
| - | Source | + | vtnet1 |
| - | --------------- | + | |
| - | 10.0.12.1 | + | |
| - | Joined | + | |
| - | Pruned | + | |
| - | Leaves | + | |
| - | Asserted oifs: ... | + | |
| - | Outgoing oifs: ... | + | |
| - | Incoming | + | |
| - | TIMERS: | + | Multicast Routing Table |
| - | 0 | + | Source |
| - | --------------------------------- (*,*,G) ------------------------------------ | + | 10.0.12.1 |
| - | Number of Groups: 1 | + | |
| - | Number of Cache MIRRORs: 0 | + | Number of Groups |
| - | ------------------------------------------------------------------------------ | + | Number of Cache MIRRORs : 0 |
| + | |||
| + | PIM Candidate Rendez-Vous Point Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| + | |||
| + | Current BSR address: 10.0.23.3 | ||
| + | |||
| + | PIM Rendez-Vous Point Set Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| </ | </ | ||
| Line 419: | Line 451: | ||
| IPv4 Virtual Interface Table | IPv4 Virtual Interface Table | ||
| | | ||
| - | 0 | + | 0 |
| - | 1 | + | 1 |
| - | 2 | + | 2 |
| IPv4 Multicast Forwarding Table | IPv4 Multicast Forwarding Table | ||
| Line 434: | Line 466: | ||
| </ | </ | ||
| - | VM2 had update its mroute table for adding a source for group 239.1.1.1 | + | VM2 had update its mroute table for adding a source for group 239.1.1.1 |
| ==== 3. Start a mcast receiver (IPerf server) on VM4 ==== | ==== 3. Start a mcast receiver (IPerf server) on VM4 ==== | ||
| Line 470: | Line 502: | ||
| < | < | ||
| - | [root@VM3]~# | + | [root@VM3]~# |
| - | Virtual Interface Table ====================================================== | + | pimctl: Sending cmd show: No error: |
| - | Vif Local Address | + | |
| - | --- --------------- | + | |
| - | 0 10.0.23.3 | + | |
| - | 1 10.0.34.254 | + | |
| - | 2 10.0.23.3 register_vif0 | + | |
| - | Vif SSM Group Sources | + | PIM Interface Table |
| + | Interface | ||
| + | vtnet1 | ||
| + | vtnet2 | ||
| - | Multicast Routing | + | PIM Neighbor |
| - | ----------------------------------- (*,G) ------------------------------------ | + | Interface |
| - | Source | + | vtnet1 |
| - | --------------- | + | |
| - | INADDR_ANY | + | |
| - | Joined | + | |
| - | Pruned | + | |
| - | Leaves | + | |
| - | Asserted oifs: ... | + | |
| - | Outgoing oifs: .o. | + | |
| - | Incoming | + | |
| - | TIMERS: | + | Multicast Routing Table |
| - | | + | Source |
| - | ----------------------------------- (S,G) ------------------------------------ | + | ANY 239.1.1.1 |
| - | Source | + | 10.0.12.1 239.1.1.1 10.0.23.2 CACHE SG |
| - | --------------- | + | |
| - | 10.0.12.1 | + | |
| - | Joined | + | |
| - | Pruned | + | |
| - | Leaves | + | |
| - | Asserted oifs: ... | + | |
| - | Outgoing oifs: .o. | + | |
| - | Incoming | + | |
| - | TIMERS: | + | Number of Groups |
| - | 200 55 0 | + | Number of Cache MIRRORs : 1 |
| - | --------------------------------- (*,*,G) ------------------------------------ | + | |
| - | Number of Groups: | + | PIM Candidate Rendez-Vous Point Table |
| - | Number of Cache MIRRORs: | + | Group Address |
| - | ------------------------------------------------------------------------------ | + | 232.0.0.0/ |
| + | 224.0.0.0/4 10.0.23.2 | ||
| + | |||
| + | Current BSR address: 10.0.23.3 | ||
| + | |||
| + | PIM Rendez-Vous Point Set Table | ||
| + | Group Address | ||
| + | 232.0.0.0/ | ||
| + | 224.0.0.0/ | ||
| </ | </ | ||
| Line 517: | Line 539: | ||
| < | < | ||
| [root@VM3]~# | [root@VM3]~# | ||
| - | |||
| IPv4 Virtual Interface Table | IPv4 Virtual Interface Table | ||
| | | ||
| - | 0 | + | 0 |
| - | 1 | + | 1 |
| - | 2 | + | 2 |
| IPv4 Multicast Forwarding Table | IPv4 Multicast Forwarding Table | ||
| | | ||
| - | | + | |
documentation/examples/multicast_with_pim-sm.1573237350.txt.gz · Last modified: 2019/11/08 19:22 by olivier
