Re: [mpls-linux-general] MPLS on Virtual machines - no connectivity
Status: Beta
Brought to you by:
jleu
From: Ricardo F. <ric...@fe...> - 2009-05-14 00:50:52
|
Hello Richard. Thank you, your idea worked. I already have response from host B. By the way, how can I see if the packets sent have the mpls labels? With Wireshark in each machine? Or is there a simple way? I need to make the mpls paths automatically, (i.e., add a new machine and create the mpls routes along the way) and also change the mpls existing module to work in a layer 2 network, instead using IPs in the command, use MAC addr. Any ideas for where to start? I appreciate every help. Thanks. From: Bowden Richard Fedora 8 seems to, by default, have a rule which rejects forwarding ping requests. Look at the contents of all the tables using # iptables -L Try running # iptables -F FORWARD on LER1 and LER2 to flush the FORWARD tables. _____ From: Ricardo Faria Hello, I'm new to mpls and I'm my final college project is based on mpls. I was trying to put it to work in fedora 8 virtual machine (VMware). I installed all the rpms from the rep, getting the mpls 1.962 version on a i386 kernel, and made 4 copies of that VM. Then follow the "MPLS for Linux: IPv4 over MPLS: two LER one LSR example for mpls-linux-1.95x", (i know is not the same version, but i suspect that the commands are the same). This is my exact configuration: 172.16.0.0/24 10.0.0.2/32 | 10.0.0.3/32 eth4 | eth7 | | --------eth3 eth6------eth5 v eth3------eth5 eth6-------- | HOST A |---------| LER1 |-------------| LER2 |---------| HOST B | ---------2 ^ 3-------2 3-------3 ^ 4-------- | | | | 192.168.0.0/24 192.168.1.0/24 Host A ifconfig eth4 10.0.0.2/32 ifconfig eth3 192.168.0.2/24 LER1 ifconfig eth6 192.168.0.3/24 ifconfig eth5 172.16.0.2/24 LER2 ifconfig eth3 172.16.0.3/24 ifconfig eth5 192.168.1.3/24 Host B ifconfig eth7 10.0.0.3/32 ifconfig eth6 192.168.1.4/24 Traffic from HOST A to HOST B ============================= HOST A ------ modprobe mpls4 ip route add 10.0.0.3/32 via 192.168.0.3 src 10.0.0.2 LER1 ----- modprobe mpls4 mpls nhlfe add key 0 instructions push gen 1000 nexthop eth5 ipv4 172.16.0.3 (returns key 0x2) ip route add 10.0.0.3/32 via 172.16.0.3 mpls 0x2 echo 1 > /proc/sys/net/ipv4/ip_forward LER2 ----- modprobe mpls4 mpls labelspace set dev eth3 labelspace 0 mpls ilm add label gen 1000 labelspace 0 mpls nhlfe add key 0 instructions nexthop eth5 ipv4 192.168.1.4 (returns key 0x2) mpls xc add ilm_label gen 1000 ilm_labelspace 0 nhlfe_key 0x2 Traffic from HOST B to HOST A ============================= HOST B ------ modprobe mpls4 ip route add 10.0.0.2/32 via 192.168.1.3 src 10.0.0.3 LER2 ----- modprobe mpls4 mpls nhlfe add key 0 instructions push gen 2000 nexthop eth3 ipv4 172.16.0.2 (returns key 0x3) ip route add 10.0.0.2/32 via 172.16.0.2 mpls 0x3 echo 1 > /proc/sys/net/ipv4/ip_forward LER1 ----- modprobe mpls4 mpls labelspace set dev eth5 labelspace 0 mpls ilm add label gen 2000 labelspace 0 mpls nhlfe add key 0 instructions nexthop eth6 ipv4 192.168.0.2 (returns key 0x3) mpls xc add ilm_label gen 2000 ilm_labelspace 0 nhlfe_key 0x3 I execute all, but in the end i don't have any connectivity. I would like to know if a simple ping from host A to Host B should have a response (witch i already tried without success) , or i have to execute some special command to test the mpls. Also, for this example, do i have to add something to iptables or route add something else? Should this few commands in the example work without nothing else? In attachment I put the output of the commands: "ip link show", "ip route show", "mpls nhlfe show", "mpls ilm show", "mpls labelspace show" and "lsmod" for each computer. Thanks for the help you could give me, but I'm starting with this and I'm getting a lot of difficulties just to start. Also if you have other tutorial, i would appreciate that. |