Request:
OS: ubuntu 7.04 (Linux Kernel 2.6.20-16-generic) with GCC 4.1.2
SW: XORP (multicast routing daemon)
HW: PC with 2 or 3 ethernet card (default gw is itself) !
Step 1: Check Linux Kernel Functions!
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MROUTE=y
After this configurations, the linux kernel support IGMP, DVMRP and MOSPF. If want support PIM-SM , do below settings
CONFIG_IP_PIMSM_V2=y
PS: you can use vi view /boot/CONFIG-(kernel version) to confirm !
Step 2: edit /etc/sysctl.conf to enable ip_forward
net.ipv4.conf.default.forwarding=1
PS: reboot or use command "sysctl -p" to enable !
Step 3: Install XORP
Step 3.1: Download xorp-1.4.tar.gz
Step 3.2: untar the xorp-1.4.tar.gz
Step 3.3: ./configure
Step 3.4: make
Step 3.4-1: make check (just to check)(it is not necessary)
Step 4: run xorp
Step 4.1: create user group named "xorp"
Step 4.2: cp or edit config.boot in /xorp-1.4/rtrmgr/config.boot
config.boot for our environment
protocols {
fib2mrib {
disable: false
}
igmp {
disable: false
interface eth0 {
vif eth0 {
disable: false
version: 3
enable-ip-router-alert-option-check: false
query-interval: 125
query-last-member-interval: 1
query-response-interval: 10
robust-count: 2
}
}
interface eth1 {
vif eth1 {
disable: false
version: 3
enable-ip-router-alert-option-check: false
query-interval: 125
query-last-member-interval: 1
query-response-interval: 10
robust-count: 2
}
}
interface eth2 {
vif eth2 {
disable: false
version: 3
enable-ip-router-alert-option-check: false
query-interval: 125
query-last-member-interval: 1
query-response-interval: 10
robust-count: 2
}
}
}
pimsm4 {
disable: false
interface eth0 {
vif eth0 {
disable: false
enable-ip-router-alert-option-check: false
dr-priority: 1
hello-period: 30
hello-triggered-delay: 5
}
}
interface eth1 {
vif eth1 {
disable: false
enable-ip-router-alert-option-check: false
dr-priority: 1
hello-period: 30
hello-triggered-delay: 5
}
}
interface eth2 {
vif eth2 {
disable: false
enable-ip-router-alert-option-check: false
dr-priority: 1
hello-period: 30
hello-triggered-delay: 5
}
}
}
}
fea {
unicast-forwarding4 {
disable: false
}
}
interfaces {
restore-original-config-on-shutdown: false
interface eth0 {
disable: false
discard: false
description: ""
default-system-config {
}
}
interface eth1 {
disable: false
discard: false
description: ""
default-system-config {
}
}
interface eth2 {
disable: false
discard: false
description: ""
default-system-config {
}
}
}
plumbing {
mfea4 {
disable: false
interface eth0 {
vif eth0 {
disable: false
}
}
interface eth1 {
vif eth1 {
disable: false
}
}
interface eth2 {
vif eth2 {
disable: false
}
}
}
}
Step 4.3: /opt/xorp-1.4/rtrmgr/xorp_rtrmgr -b /opt/xorp-1.4/rtrmgr/config.boot
Step 5: Check Mrouter work OK
Step 5.1: Connect eth0 to VLC Player server PC and connect eth1 to VLC Player client PC
Step 5.2: Use VLC Player server PC run multicast streaming
Step 5.3: Use VLC Player client PC to play multicast streaming by multicast URL