mpls-linux-general Mailing List for MPLS for Linux (Page 113)
Status: Beta
Brought to you by:
jleu
You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(26) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(22) |
Feb
(19) |
Mar
(19) |
Apr
(45) |
May
(52) |
Jun
(101) |
Jul
(79) |
Aug
(24) |
Sep
(43) |
Oct
(54) |
Nov
(71) |
Dec
(53) |
| 2002 |
Jan
(111) |
Feb
(123) |
Mar
(67) |
Apr
(61) |
May
(75) |
Jun
(26) |
Jul
(36) |
Aug
(41) |
Sep
(79) |
Oct
(85) |
Nov
(58) |
Dec
(39) |
| 2003 |
Jan
(26) |
Feb
(61) |
Mar
(80) |
Apr
(56) |
May
(39) |
Jun
(44) |
Jul
(28) |
Aug
(25) |
Sep
(4) |
Oct
(20) |
Nov
(38) |
Dec
(9) |
| 2004 |
Jan
(14) |
Feb
(14) |
Mar
(68) |
Apr
(17) |
May
(45) |
Jun
(42) |
Jul
(41) |
Aug
(23) |
Sep
(46) |
Oct
(89) |
Nov
(55) |
Dec
(33) |
| 2005 |
Jan
(74) |
Feb
(39) |
Mar
(105) |
Apr
(96) |
May
(43) |
Jun
(48) |
Jul
(21) |
Aug
(22) |
Sep
(33) |
Oct
(28) |
Nov
(29) |
Dec
(81) |
| 2006 |
Jan
(37) |
Feb
(32) |
Mar
(147) |
Apr
(37) |
May
(33) |
Jun
(28) |
Jul
(15) |
Aug
(20) |
Sep
(15) |
Oct
(23) |
Nov
(30) |
Dec
(40) |
| 2007 |
Jan
(20) |
Feb
(24) |
Mar
(65) |
Apr
(69) |
May
(41) |
Jun
(53) |
Jul
(39) |
Aug
(76) |
Sep
(53) |
Oct
(43) |
Nov
(26) |
Dec
(24) |
| 2008 |
Jan
(19) |
Feb
(67) |
Mar
(91) |
Apr
(75) |
May
(47) |
Jun
(63) |
Jul
(68) |
Aug
(39) |
Sep
(44) |
Oct
(33) |
Nov
(62) |
Dec
(84) |
| 2009 |
Jan
(14) |
Feb
(39) |
Mar
(55) |
Apr
(63) |
May
(16) |
Jun
(9) |
Jul
(4) |
Aug
(6) |
Sep
(1) |
Oct
(2) |
Nov
(10) |
Dec
(5) |
| 2010 |
Jan
(3) |
Feb
(1) |
Mar
(5) |
Apr
(13) |
May
(4) |
Jun
(5) |
Jul
(2) |
Aug
(8) |
Sep
(6) |
Oct
(1) |
Nov
(2) |
Dec
(2) |
| 2011 |
Jan
(1) |
Feb
(21) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(6) |
Sep
|
Oct
|
Nov
(2) |
Dec
(6) |
| 2012 |
Jan
(5) |
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(5) |
Aug
(3) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
|
From: James R. L. <jl...@mi...> - 2003-05-06 14:58:22
|
The best place to look is at the code for mplsadm2 (mpls-linux/utils/mplsadm.c) The structures used for the 'gets' is the same as used for the 'sets'. Othern then that, the kernel source is the next best place. I'll be more then happy to answer specific questions. On Tue, May 06, 2003 at 04:41:17PM +0200, Stefan Winter wrote: > Hello, > > my name is Stefan Winter and I am currently working on an SNMP-Agent for LSRs > at the University of Karlsruhe, Germany. To deliver SNMP-Requests to the > kernel i want to use the mpls ioctls. After reading the kernel-patch, it is > clear to me which ioctls to use. What is not yet clear is, what is the exact > structure of the arguments passed to the ioctls. > Is there some API documentation on the use of ioctls available? > > Greetings, > > Stefan Winter > > -- > Registered Linux user #305178 > http://counter.li.org > > > ------------------------------------------------------- > Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara > The only event dedicated to issues related to Linux enterprise solutions > www.enterpriselinuxforum.com > > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: Stefan W. <ma...@st...> - 2003-05-06 14:41:19
|
Hello, my name is Stefan Winter and I am currently working on an SNMP-Agent for LSRs at the University of Karlsruhe, Germany. To deliver SNMP-Requests to the kernel i want to use the mpls ioctls. After reading the kernel-patch, it is clear to me which ioctls to use. What is not yet clear is, what is the exact structure of the arguments passed to the ioctls. Is there some API documentation on the use of ioctls available? Greetings, Stefan Winter -- Registered Linux user #305178 http://counter.li.org |
|
From: Fredrik P. <Fre...@op...> - 2003-05-06 13:55:26
|
On Tuesday 06 May 2003 17.19, James R. Leu wrote: > Excellent debugging. During my last re-write of the nexthop handling > I forgot yo take into consideration BGP routes whose nexthop is an > IP address which is not in a directly connected subnet. I should be able > to come up with a quick fix. > > Are you using 'p4' to get access to my development tree? If so I can > just tell you when the fix is in and you can just sync your client > at that time. p4 seems quite easy to use, let us know when there is a fix available and we will test it. Thanks for the quick reply. -- Fredrik Pettersson (Fre...@op...) Operax AB (www.operax.com) Aurorum 8, 977 75 Luleå +46 920 75502 |
|
From: James R. L. <jl...@mi...> - 2003-05-06 13:30:00
|
Excellent debugging. During my last re-write of the nexthop handling
I forgot yo take into consideration BGP routes whose nexthop is an
IP address which is not in a directly connected subnet. I should be able
to come up with a quick fix.
Are you using 'p4' to get access to my development tree? If so I can
just tell you when the fix is in and you can just sync your client
at that time.
On Tue, May 06, 2003 at 11:17:07AM +0200, Fredrik Pettersson wrote:
> I work on the same project as Mattias, and here are some more details.
>=20
> On Tuesday 06 May 2003 07.36, James R. Leu wrote:
> > What version of ldp-portable and can you get a stack trace or trace o=
utput
> > from 'mplsd'
>=20
> ldp-portable is version 0.310.
>=20
> Zebra, ospfd and bgpd are all up and running. BGP is peering with a rou=
ter=20
> which does not redistribute the external routes in OSPF, the intention =
is to=20
> distribute those by using BGP. When mplsd is started it will crash with=
the=20
> following backtrace.
>=20
> (gdb) bt
> #0 0x0804c66b in mpls_zebra_read_ipv4 (command=3D7, client=3D0x80cf7d8=
,=20
> length=3D22) at mpls_zebra.c:282
> #1 0x0809caf7 in zclient_read (thread=3D0xbffffaa0) at zclient.c:867
> #2 0x08095100 in thread_call (thread=3D0xbffffaa0) at thread.c:647
> #3 0x0804cba7 in main (argc=3D3, argv=3D0xbffffb84) at mpls_main.c:223
> #4 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6
>=20
> The segfault is from a debug print which tries to access a pointer with=
out=20
> checking to see if it is NULL. The simple fix is to add a check for NUL=
L,=20
> with the following patch.
>=20
> --- mpls_zebra.c.orig Tue May 6 11:02:19 2003
> +++ mpls_zebra.c Tue May 6 11:02:41 2003
> @@ -279,7 +279,9 @@
> zlog_info("\tnexthop %s", inet_ntoa(tmp));
> }
> if (nexthop.type & MPLS_NH_IF) {
> - zlog_info("\tifindex %d", nexthop.if_handle->ifindex);
> + if (nexthop.if_handle !=3D NULL) {
> + zlog_info("\tifindex %d", nexthop.if_handle->ifindex);
> + }
> }
>=20
> if (command =3D=3D ZEBRA_IPV4_ROUTE_ADD) {
>=20
> This allows mplsd to survive for several seconds longer, but it will se=
gfault=20
> again, with this stacktrace.
>=20
> Program received signal SIGSEGV, Segmentation fault.
> 0x080839dd in mpls_nexthop_compare (nh1=3D0x81b05b0, nh2=3D0xbffff97c) =
at=20
> mpls_compare.c:38
> 38 if ((retval =3D mpls_if_handle_compare(nh1->if_handle,=20
> nh2->if_handle))) {
> (gdb) bt
> #0 0x080839dd in mpls_nexthop_compare (nh1=3D0x81b05b0, nh2=3D0xbffff9=
7c) at=20
> mpls_compare.c:38
> #1 0x08049cf1 in mpls_fib_getnext_route (handle=3D0x80d1e08, dest=3D0x=
bffff960)=20
> at impl_fib.c:154
> #2 0x08069940 in ldp_label_mapping_initial_callback (timer=3D0x81fdff0=
,=20
> extra=3D0x81f8dc8, handle=3D0x80d1ec8) at ldp_label_mapping.c:523
> #3 0x0804b82c in mpls_timer (thread=3D0xbffffaa0) at impl_timer.c:28
> #4 0x08095108 in thread_call (thread=3D0xbffffaa0) at thread.c:647
> #5 0x0804cbaf in main (argc=3D3, argv=3D0xbffffb84) at mpls_main.c:223
> #6 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6
> (gdb) print nh1->if_handle
> $8 =3D (struct interface *) 0x0
> (gdb) print nh2->if_handle
> $9 =3D (struct interface *) 0x0
>=20
> I don't know if I would gain anything by fixing this segfault, even if =
it is=20
> simple to check for NULL in mpls_nexthop_compare as well. The basic pro=
blem=20
> seems to be that the if_handle should be something other than NULL. As=20
> Mattias mentioned, the reason for the error is that BGP reports the gat=
eway=20
> for external routes to be an interface which the Linux machine is not=20
> directly connected to. A possible fix is for mplsd to recognize this=20
> situation and find the route towards the gateway, and use the interface=
=20
> related to that route instead, but that is only a guess from my side. I=
n the=20
> image below which Mattias made, the mplsd at B should replace gateway=20
> 10.1.0.105 with 10.7.2.10. Let us know if there is any other informatio=
n you=20
> need.
>=20
> /Fredrik Pettersson
>=20
> > On Wed, Apr 30, 2003 at 10:49:43AM +0200, Mattias Persson wrote:
> > > The following setup results in a segmentation fault of mplsd:
> > >
> > > .105 .106 .10 .9
> > > X----10.1.0.104/29------A---10.7.2.8/29----B
> > >
> > > Router A is a Cisco 3620 and router B is a linux machine.
> > > Both run OSPF, BGP and MPLS. A and B are bgp peers. They are in the=
same
> > > BGP AS and in the same BGP and OSPF areas.
> > >
> > > Router X runs BGP. It is in another BGP AS and peers with router A.
> > >
> > > mplsd on B crashes when it receives some routes from
> > > the bgp protocol. I have traced the problem and it
> > > occurs because of the way bgp announces it routes:
> > > Router A tells router B that network 10.1.0.8/29 can be
> > > reached on nexthop 10.1.0.105. mplsd on Router B
> > > however, can not handle this because it
> > > does not have a direct connection to 10.1.0.105.
> > >
> > > This results in a seg fault in mplsd (if_handle is null for the nex=
thop).
> > >
> > > /Mattias Persson
>=20
> --=20
> Fredrik Pettersson (Fre...@op...)
> Operax AB (www.operax.com)
> Aurorum 8, 977 75 Lule=E5
> +46 920 75502
--=20
James R. Leu
|
|
From: Fredrik P. <Fre...@op...> - 2003-05-06 09:17:38
|
I work on the same project as Mattias, and here are some more details.
On Tuesday 06 May 2003 07.36, James R. Leu wrote:
> What version of ldp-portable and can you get a stack trace or trace output
> from 'mplsd'
ldp-portable is version 0.310.
Zebra, ospfd and bgpd are all up and running. BGP is peering with a router
which does not redistribute the external routes in OSPF, the intention is to
distribute those by using BGP. When mplsd is started it will crash with the
following backtrace.
(gdb) bt
#0 0x0804c66b in mpls_zebra_read_ipv4 (command=7, client=0x80cf7d8,
length=22) at mpls_zebra.c:282
#1 0x0809caf7 in zclient_read (thread=0xbffffaa0) at zclient.c:867
#2 0x08095100 in thread_call (thread=0xbffffaa0) at thread.c:647
#3 0x0804cba7 in main (argc=3, argv=0xbffffb84) at mpls_main.c:223
#4 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6
The segfault is from a debug print which tries to access a pointer without
checking to see if it is NULL. The simple fix is to add a check for NULL,
with the following patch.
--- mpls_zebra.c.orig Tue May 6 11:02:19 2003
+++ mpls_zebra.c Tue May 6 11:02:41 2003
@@ -279,7 +279,9 @@
zlog_info("\tnexthop %s", inet_ntoa(tmp));
}
if (nexthop.type & MPLS_NH_IF) {
- zlog_info("\tifindex %d", nexthop.if_handle->ifindex);
+ if (nexthop.if_handle != NULL) {
+ zlog_info("\tifindex %d", nexthop.if_handle->ifindex);
+ }
}
if (command == ZEBRA_IPV4_ROUTE_ADD) {
This allows mplsd to survive for several seconds longer, but it will segfault
again, with this stacktrace.
Program received signal SIGSEGV, Segmentation fault.
0x080839dd in mpls_nexthop_compare (nh1=0x81b05b0, nh2=0xbffff97c) at
mpls_compare.c:38
38 if ((retval = mpls_if_handle_compare(nh1->if_handle,
nh2->if_handle))) {
(gdb) bt
#0 0x080839dd in mpls_nexthop_compare (nh1=0x81b05b0, nh2=0xbffff97c) at
mpls_compare.c:38
#1 0x08049cf1 in mpls_fib_getnext_route (handle=0x80d1e08, dest=0xbffff960)
at impl_fib.c:154
#2 0x08069940 in ldp_label_mapping_initial_callback (timer=0x81fdff0,
extra=0x81f8dc8, handle=0x80d1ec8) at ldp_label_mapping.c:523
#3 0x0804b82c in mpls_timer (thread=0xbffffaa0) at impl_timer.c:28
#4 0x08095108 in thread_call (thread=0xbffffaa0) at thread.c:647
#5 0x0804cbaf in main (argc=3, argv=0xbffffb84) at mpls_main.c:223
#6 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) print nh1->if_handle
$8 = (struct interface *) 0x0
(gdb) print nh2->if_handle
$9 = (struct interface *) 0x0
I don't know if I would gain anything by fixing this segfault, even if it is
simple to check for NULL in mpls_nexthop_compare as well. The basic problem
seems to be that the if_handle should be something other than NULL. As
Mattias mentioned, the reason for the error is that BGP reports the gateway
for external routes to be an interface which the Linux machine is not
directly connected to. A possible fix is for mplsd to recognize this
situation and find the route towards the gateway, and use the interface
related to that route instead, but that is only a guess from my side. In the
image below which Mattias made, the mplsd at B should replace gateway
10.1.0.105 with 10.7.2.10. Let us know if there is any other information you
need.
/Fredrik Pettersson
> On Wed, Apr 30, 2003 at 10:49:43AM +0200, Mattias Persson wrote:
> > The following setup results in a segmentation fault of mplsd:
> >
> > .105 .106 .10 .9
> > X----10.1.0.104/29------A---10.7.2.8/29----B
> >
> > Router A is a Cisco 3620 and router B is a linux machine.
> > Both run OSPF, BGP and MPLS. A and B are bgp peers. They are in the same
> > BGP AS and in the same BGP and OSPF areas.
> >
> > Router X runs BGP. It is in another BGP AS and peers with router A.
> >
> > mplsd on B crashes when it receives some routes from
> > the bgp protocol. I have traced the problem and it
> > occurs because of the way bgp announces it routes:
> > Router A tells router B that network 10.1.0.8/29 can be
> > reached on nexthop 10.1.0.105. mplsd on Router B
> > however, can not handle this because it
> > does not have a direct connection to 10.1.0.105.
> >
> > This results in a seg fault in mplsd (if_handle is null for the nexthop).
> >
> > /Mattias Persson
--
Fredrik Pettersson (Fre...@op...)
Operax AB (www.operax.com)
Aurorum 8, 977 75 Luleå
+46 920 75502
|
|
From: James R. L. <jl...@mi...> - 2003-05-06 04:17:41
|
Check the contents of /usr/include/linux/mpls.h and /usr/src/linux/mpls.h and make sure they match. On Fri, Apr 18, 2003 at 04:15:03PM -0700, Philip J. Hollenback wrote: > I'm attempting to build kernel 2.4.18 + MPLS from the redhat 7.3 > kernel source rpm, and running into problems. I applied the patch > from the 1.172 mpls release as follows: > > # cd /usr/src/linux > # patch -p1 ../mpls-1.1/patches/linux-kernel.diff > > the patch installed cleanly. I then did a "make xconfig" and turned > on mpls, followed by "make dep && make". The make eventually dies > with this message: > > cc -D__KERNEL__ -I/usr/src/linux-2.4.18-3-MPLS/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -Wno-unused -pipe -mpreferred-stack-boundary=2 -march=i686 -DKBUILD_BASENAME=mpls_output -c -o mpls_output.o mpls_output.c > mpls_output.c: In function `mpls_output': > mpls_output.c:193: structure has no member named `mpls_moi' > mpls_output.c:198: structure has no member named `mpls_moi' > mpls_output.c: In function `mpls_set_nexthop': > mpls_output.c:220: structure has no member named `mpls_moi' > make[3]: *** [mpls_output.o] Error 1 > make[3]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net/mpls' > make[2]: *** [first_rule] Error 2 > make[2]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net/mpls' > make[1]: *** [_subdir_mpls] Error 2 > make[1]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net' > make: *** [_dir_net] Error 2 > > Note that I tried this patch against a stock 2.4.18 kernel source from > kernel.org, and it worked fine. It only fails against the RedHat 7.3 > 2.4.18-3 kernel source, which is unfortunately the one I have to use. > > Ideas? > > Thanks, > P. > > -- > Phil Hollenback > pho...@ne... > AIM: phreno13 > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:46:13
|
What version of ldp-portable and can you get a stack trace or trace output from 'mplsd' Enable trace output: uml1-mpls# conf t uml1-mpls(config)# mpls ldp uml1-mpls(config-ldp)# tr uml1-mpls(config-ldp)# trace all uml1-mpls(config-ldp)# trace all uml1-mpls(config-ldp)# The tracing info is sent to standard out of the mplsd program (don't use -d and make sure to redirect the output someplace) Getting a stack trace: [jleu jleu-laptop 10:45pm] ~-> gdb /usr/sbin/mplsd core <snip> (gdb) where <stack trace> On Wed, Apr 30, 2003 at 10:49:43AM +0200, Mattias Persson wrote: > The following setup results in a segmentation fault of mplsd: > > .105 .106 .10 .9 > X----10.1.0.104/29------A---10.7.2.8/29----B > > Router A is a Cisco 3620 and router B is a linux machine. > Both run OSPF, BGP and MPLS. A and B are bgp peers. They are in the same > BGP AS and in the same BGP and OSPF areas. > > Router X runs BGP. It is in another BGP AS and peers with router A. > > mplsd on B crashes when it receives some routes from > the bgp protocol. I have traced the problem and it > occurs because of the way bgp announces it routes: > Router A tells router B that network 10.1.0.8/29 can be > reached on nexthop 10.1.0.105. mplsd on Router B > however, can not handle this because it > does not have a direct connection to 10.1.0.105. > > This results in a seg fault in mplsd (if_handle is null for the nexthop). > > /Mattias Persson > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:43:34
|
You may want to read some of the docs on zebra's web site. http://www.zebra.org/ On Wed, Apr 30, 2003 at 04:32:10PM +0800, age wrote: > hi,all > I have changed mplsd.conf and reboot the machine ,but when i=20 > enter mplsd's user interface and run "sh run",I found the file is > not changed. > why? must I change the configuration by configure terminal? > if so, how Can I delete a sentence just like "ip address 192.168.8.1" > Help me pls! > Thanks in advance! > regards, > wang >=20 >=20 >=20 >=20 >=20 > --http://www.eyou.com > --=CE=C8=B6=A8=BF=C9=BF=BF=B5=C4=C3=E2=B7=D1=B5=E7=D7=D3=D0=C5=CF=E4 =D3= =EF=D2=F4=D3=CA=BC=FE =D2=C6=B6=AF=CA=E9=C7=A9 =C8=D5=C0=FA=B7=FE=CE=F1= =CD=F8=C2=E7=B4=E6=B4=A2...=D2=DA=D3=CA=CE=B4=BE=A1 >=20 >=20 >=20 >=20 > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general --=20 James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:41:09
|
Start off be getting ldp-portable 0.310. Then create dummy interface on each router, and assign a /32 prefix to it. Make sure that address gets propogated via OSPF. Make sure that address is getting picked as the router-id: uml1-zebra# sho router-id router-id: 192.168.0.1 uml1-zebra# Make sure that address is being picked as the LSR-ID: uml1-mpls# show ldp LSR-ID: c0a80001 Admin State: ENABLED Transport Address: c0a80001 Control Mode: ORDERED Repair Mode: GLOBAL Propogate Release: TRUE Label Merge: TRUE Retention Mode: LIBERAL Loop Detection Mode: NONE TTL-less-domain: FALSE Local TCP Port: 646 Local UDP Port: 646 Keep-alive Time: 45 Keep-alive Interval: 15 Hello Time: 15 Hello Interval: 5 uml1-mpls# I have attached some sample configs On Mon, Apr 28, 2003 at 09:39:10PM +0800, wang wrote: > hi,all > I have two PCs with linux8.0 > > A--------------------B > 192.168.8.2 192.168.8.3 > > I have installed mpls-linux-1.172 and ldp-portable-0.305 successfully. > And I can set up static lsp by mplsadm2 . > Now I want to setup dynamic LSP via ldp. > > Here are my daemons files: > > zebra.conf: > > ! > ! Zebra configuration saved from vty > ! 2003/04/28 11:29:54 > ! > hostname R-athlon > password zebra > enable password zebra > log file /usr/local/etc/zebra.log > ! > interface lo > ip address 127.0.0.1/8 > ! > interface eth0 > ip address 192.168.8.197/24 > ! > ! > ! > line vty > ! > > ospfd.conf: > > ! > ! Zebra configuration saved from vty > ! 2003/04/28 16:24:30 > ! > hostname athlon_osfpd > password zebra > log file /usr/local/etc/ospfd.log > log stdout > ! > ! > ! > interface lo > ! > interface eth0 > ! > router ospf > network 192.168.8.0/24 area 0 > ! > line vty > ! > > mplsd.conf > > ! > ! Zebra configuration saved from vty > ! 2003/04/28 20:56:55 > ! > hostname athlon-mplsd > password zebra > enable password zebra > ! > ! > mpls ldp > egress connected > ! > interface lo > no mpls labelspace > ! > interface eth0 > mpls labelspace 1 > mpls ldp > ! > ! > line vty > ! > > > Then I run the following command: > #zebra -d > #ospfd -d > #mplsd -d > > #telnet localhost 2610(mplsd) > Password: > breezy-mplsd> en > Password: > breezy-mplsd# > > breezy-mplsd#show ldp > > LSR-ID: 00000000 Admin State: ENABLED > Transport Address: 00000000 > Control Mode: ORDERED Repair Mode: GLOBAL > Propogate Release: TRUE Label Merge: TRUE > Retention Mode: LIBERAL Loop Detection Mode: NONE > TTL-less-domain: FALSE > Local TCP Port: 646 Local UDP Port: 646 > Keep-alive Time: 45 Keep-alive Interval: 15 > Hello Time: 15 Hello Interval: 5 > > > breezy-mplsd#show ldp neighbor > > No discovered neighbors !!!! > > Why no neighbors? > > regards, > wang > > > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:28:34
|
The advantage of using the 'forwarding' technique is if you create many 'application' labels (2nd level labels) that utilize a common tunnel LSP (top level label). If the tunnel LSP changes, you only need to change the contents of its instructions (one change vesus a change for every application label). The advantage of using the multiple push technique is simplicity. On Fri, Apr 25, 2003 at 11:18:38AM -0600, Murthy S. Andukuri wrote: > > mpls-linux-1.1/utils/README talks of three ways of achieving > LSP hiererchy. among them are multiple-push and forwarding. can anybody > explain what the diference between the two is ? and when one is used > the other ? > > Thanks > Murthy Andukuri > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:25:13
|
You need to use the 'bind' syntax of mplsadm2: [jleu jleu-laptop 10:21pm] ~-> mplsadm2 -A -O 0 Key: 0x00000002 Out Segment add: Success [jleu jleu-laptop 10:21pm] ~-> mplsadm2 -O 0x2 -o push:gen:10000:set:eth0:ipv4:192.168.1.1 Out Instr: Success [jleu jleu-laptop 10:21pm] ~-> mplsadm2 -L eth1:0 Label Space: Success [jleu jleu-laptop 10:22pm] ~-> mplsadm2 -A -I gen:11000:0 In Label add: Success [jleu jleu-laptop 10:22pm] ~-> mplsadm2 -B -I gen:11000:0 -O 0x2 Bind In2Out add: Success [jleu jleu-laptop 10:22pm] ~-> more /proc/net/mpls_in 0x02af8001 0/0/0 gen 11000 0 1 POP FWD(0x00000002) [jleu jleu-laptop 10:23pm] ~-> more /proc/net/mpls_out 0x00000002 0/0/0 2 PUSH(gen 10000) SET(eth0,192.168.1.1) [jleu jleu-laptop 10:24pm] On Thu, Apr 24, 2003 at 04:25:06PM -0600, Murthy S. Andukuri wrote: > > I am trying to come up with various LSPs between machines > A(LER),B(LSR),C(LSR), D(LER) in my lab. i.e. > A-D, A-B-D, A-C-D,A-B-C-D,A-C-B-D etc. > I have looked through the examples in mpls-linux-1.1/utils/README and > some other docs on the web, but still cannot figure out how to setup the > commands. > > My problem is, on an LSR , How to associate a different outgoing > label with each incoming label ? i.e. if machine C receives packets with > label 'LA' from A and 'LB' from B, how to replace 'LA' with 'LA2'(say) and > 'LB' with 'LB2'(say) on their way out to D. (None of the examples i > came across, as I understand them, seem to address this particular issue) > > some background : I have successfully setup an LSP between two machines > using mplsadm. However, all that happens here is that a label is 'push'ed > on one machine and is 'pop'ped on the other. there is no 'swapping' of > labels. now, I am trying to extend this into a 4-machine network with > various paths as mentioned above. > > any examples/help will be greatly appreciated. > > Thanks in advance > Murthy Andukuri > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-06 03:20:50
|
Pieces of this problem have been solved but an integrated solution does not exist (yet). -MPLS Forwaring (MPLS for Linux) -VPN signaling (Zebra) -VRF (Linux VRF) On Wed, Apr 23, 2003 at 08:00:09PM -0300, Marcel Castro wrote: > I would like to know if there is any available/free > implementation of VPN BGP/MPLS in linux ? > Anyone that implements MPLS, VRF, MP-BGP on linux. >=20 > I will appreciate some help. >=20 > Marcel Castro >=20 > _______________________________________________________________________ > Yahoo! Mail > O melhor e-mail gratuito da internet: 6MB de espa=E7o, antiv=EDrus, ace= sso POP3, filtro contra spam.=20 > http://br.mail.yahoo.com/ >=20 >=20 > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general --=20 James R. Leu |
|
From: James R. L. <jl...@mi...> - 2003-05-05 23:52:09
|
On Wed, Apr 30, 2003 at 08:47:00PM -0400, Fran=E7ois Desloges wrote: <snip> > James, did Dave ever give you hint about what he finds crappy ? > Dave normally sets very high standard performance-wise. I think you are= more=20 > concern with flexibility. I have not seen his code yet but I can tell f= rom=20 > experience that he could certainly get good hints from you, so that eve= rybody=20 > wins.=20 We've talked. Many of his issues revolve around some of code I wrote whi= le being lazy and some of the hacks I put in place because of my lack of understanding of areas of the linux net stack. He neglected to use the word 'crappy' in direct conversation with me, but I guess that is 'par fo= r the course'. > I mean, it would be stupid to not involve the guy in charge of MPLS int= erop=20 > testing at the Networld Interop show for so many years. Funny you mention that, I just got back from Las Vegas where I was workin= g in the Advanced Internetworking Initiative iLab at Networld + Interop. Bill Jensen, myself, and the rest of the team were quite successfully. Most o= f the focus was on MPLS services (VPLS, Layer 2 Transports 'ala Martini', and RFC2547bis) running over resilient technologies (SONET, RSTP, MPLS FRR). We had hoped to work with some of the 'graceful restart' mechanisms for the routing protocols, but were unable to convince enough vendors to ship us code. This year we started what will hopefully be a long term relationship with ISOCORE (a MPLS verification and interoperability lab). Good to hear from you Fran?ois --=20 James R. Leu |
|
From: Ben C. <be...@ie...> - 2003-05-01 05:31:21
|
I have a some what basic question about the MPLS stack for linux. I currently have a Cisco network or 7206's running mpls between vrf's on the routers. I would like to connect a linux box to this cloud, is it possible for the linux box to do pings on any vrf ? such I would normally do on one of the routers ? like I would normally type command ping vrf VPN-ABC 1.2.3.4 Is there nore commands available for doing basic trouble shooting diags on the MPLS network ? Regards, Ben Cornish Dip.IT, RHCE Technical Op's Manager - iExec.com.au Ph 1300 659 222 - Fax 7 3871 1844 Mobile 0417 617 204 - Direct 07 3234 9302 Icq# 32533751 |
|
From: David S. M. <da...@re...> - 2003-05-01 05:10:49
|
I've already been talking to James in private. He agress with nearly all my gripes with his code except the use of instructions which I'm still not convinced about myself. |
|
From: <fde...@sy...> - 2003-05-01 00:47:23
|
Hmmm... While reading this: http://lwn.net/Articles/30720/ I found this: net/ ---- (davem) - Real serious use of IPSEC is hampered by lack of MPLS support. MPLS is a switching technology that works by switching based upon fixed length labels prepended to packets. Many people use this and IPSEC to implement VPNs over public networks, it is also used for things like traffic engineering. A good reference site is: http://www.mplsrc.com/ Anyways, an existing (crappy) implementation exists. I've almost completed a rewrite, I should have something in the tree next week. James, did Dave ever give you hint about what he finds crappy ? Dave normally sets very high standard performance-wise. I think you are more concern with flexibility. I have not seen his code yet but I can tell from experience that he could certainly get good hints from you, so that everybody wins. I mean, it would be stupid to not involve the guy in charge of MPLS interop testing at the Networld Interop show for so many years. FD |
|
From: Mattias P. <mat...@op...> - 2003-04-30 08:50:40
|
The following setup results in a segmentation fault of mplsd: .105 .106 .10 .9 X----10.1.0.104/29------A---10.7.2.8/29----B Router A is a Cisco 3620 and router B is a linux machine. Both run OSPF, BGP and MPLS. A and B are bgp peers. They are in the same BGP AS and in the same BGP and OSPF areas. Router X runs BGP. It is in another BGP AS and peers with router A. mplsd on B crashes when it receives some routes from the bgp protocol. I have traced the problem and it occurs because of the way bgp announces it routes: Router A tells router B that network 10.1.0.8/29 can be reached on nexthop 10.1.0.105. mplsd on Router B however, can not handle this because it does not have a direct connection to 10.1.0.105. This results in a seg fault in mplsd (if_handle is null for the nexthop). /Mattias Persson |
|
From: age <te...@ey...> - 2003-04-30 08:30:52
|
hi,all I have changed mplsd.conf and reboot the machine ,but when i enter mplsd's user interface and run "sh run",I found the file is not changed. why? must I change the configuration by configure terminal? if so, how Can I delete a sentence just like "ip address 192.168.8.1" Help me pls! Thanks in advance! regards, wang --http://www.eyou.com --Îȶ¨¿É¿¿µÄÃâ·Ñµç×ÓÐÅÏä ÓïÒôÓʼþ ÒÆ¶¯ÊéÇ© ÈÕÀú·þÎñ ÍøÂç´æ´¢...ÒÚÓÊδ¾¡ |
|
From: wang <te...@ey...> - 2003-04-28 13:35:38
|
hi,all
I have two PCs with linux8.0
A--------------------B
192.168.8.2 192.168.8.3
I have installed mpls-linux-1.172 and ldp-portable-0.305 successfully.
And I can set up static lsp by mplsadm2 .
Now I want to setup dynamic LSP via ldp.
Here are my daemons files:
zebra.conf:
!
! Zebra configuration saved from vty
! 2003/04/28 11:29:54
!
hostname R-athlon
password zebra
enable password zebra
log file /usr/local/etc/zebra.log
!
interface lo
ip address 127.0.0.1/8
!
interface eth0
ip address 192.168.8.197/24
!
!
!
line vty
!
ospfd.conf:
!
! Zebra configuration saved from vty
! 2003/04/28 16:24:30
!
hostname athlon_osfpd
password zebra
log file /usr/local/etc/ospfd.log
log stdout
!
!
!
interface lo
!
interface eth0
!
router ospf
network 192.168.8.0/24 area 0
!
line vty
!
mplsd.conf
!
! Zebra configuration saved from vty
! 2003/04/28 20:56:55
!
hostname athlon-mplsd
password zebra
enable password zebra
!
!
mpls ldp
egress connected
!
interface lo
no mpls labelspace
!
interface eth0
mpls labelspace 1
mpls ldp
!
!
line vty
!
Then I run the following command:
#zebra -d
#ospfd -d
#mplsd -d
#telnet localhost 2610(mplsd)
Password:
breezy-mplsd> en
Password:
breezy-mplsd#
breezy-mplsd#show ldp
LSR-ID: 00000000 Admin State: ENABLED
Transport Address: 00000000
Control Mode: ORDERED Repair Mode: GLOBAL
Propogate Release: TRUE Label Merge: TRUE
Retention Mode: LIBERAL Loop Detection Mode: NONE
TTL-less-domain: FALSE
Local TCP Port: 646 Local UDP Port: 646
Keep-alive Time: 45 Keep-alive Interval: 15
Hello Time: 15 Hello Interval: 5
breezy-mplsd#show ldp neighbor
No discovered neighbors !!!!
Why no neighbors?
regards,
wang
|
|
From: Murthy S. A. <msa...@cs...> - 2003-04-25 17:16:35
|
mpls-linux-1.1/utils/README talks of three ways of achieving LSP hiererchy. among them are multiple-push and forwarding. can anybody explain what the diference between the two is ? and when one is used the other ? Thanks Murthy Andukuri |
|
From: Murthy S. A. <msa...@cs...> - 2003-04-24 22:23:13
|
I am trying to come up with various LSPs between machines A(LER),B(LSR),C(LSR), D(LER) in my lab. i.e. A-D, A-B-D, A-C-D,A-B-C-D,A-C-B-D etc. I have looked through the examples in mpls-linux-1.1/utils/README and some other docs on the web, but still cannot figure out how to setup the commands. My problem is, on an LSR , How to associate a different outgoing label with each incoming label ? i.e. if machine C receives packets with label 'LA' from A and 'LB' from B, how to replace 'LA' with 'LA2'(say) and 'LB' with 'LB2'(say) on their way out to D. (None of the examples i came across, as I understand them, seem to address this particular issue) some background : I have successfully setup an LSP between two machines using mplsadm. However, all that happens here is that a label is 'push'ed on one machine and is 'pop'ped on the other. there is no 'swapping' of labels. now, I am trying to extend this into a 4-machine network with various paths as mentioned above. any examples/help will be greatly appreciated. Thanks in advance Murthy Andukuri |
|
From: Murthy S. A. <msa...@cs...> - 2003-04-24 14:46:18
|
A few days back , i posted a query asking if anybody had experience doing this . There was one response, suggesting I use the IpSecN interface IDs (instead of thephysical interface IDs) when setting up the MPLS LSPs. What I have realized since, is that one does NOT have to do ANYTHING special to be able to get this to run. It will work automatically. The reason being, IPSec works at layer 3 (it is essenetially IP in IP) and MPLS works below layer 3 (and above 2). Therefore, as long as we make sure we associate the same physical interface with IpSec (through 'left'/'right' and 'leftgateway'/'rightgateway' in ipsec.conf - for freeswan) and with MPLS (when we set the 'push' instructions), packets automatically go in the order IP<-->IPSec<-->MPLS<------>Ethernet<-->wire L3 L3 L2.5(?) L2 I was able to get this to work in a lab setting. Just thought I will share this info with the group. Murthy Andukuri |
|
From: <mar...@ya...> - 2003-04-23 23:00:09
|
I would like to know if there is any available/free implementation of VPN BGP/MPLS in linux ? Anyone that implements MPLS, VRF, MP-BGP on linux. I will appreciate some help. Marcel Castro _______________________________________________________________________ Yahoo! Mail O melhor e-mail gratuito da internet: 6MB de espaço, antivírus, acesso POP3, filtro contra spam. http://br.mail.yahoo.com/ |
|
From: Paresh P. <pa...@ma...> - 2003-04-22 06:16:14
|
Hi All, We have implemented Graceful Restart mechanism for LDP as per RFC 3478 (section 3.1). Has anybody implemented the same using alternative procedures (section 3.2)? Are there any implementation issues with this method. Is there any implementation survey underway for the LDP graceful restart? Regards, Paresh Patil MBT (COE-Embedded) ********************************************************* Disclaimer This message (including any attachments) contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, you should delete this message and are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited. ********************************************************* Visit us at http://www.mahindrabt.com |
|
From: Philip J. H. <pho...@ne...> - 2003-04-18 23:15:30
|
I'm attempting to build kernel 2.4.18 + MPLS from the redhat 7.3 kernel source rpm, and running into problems. I applied the patch from the 1.172 mpls release as follows: # cd /usr/src/linux # patch -p1 ../mpls-1.1/patches/linux-kernel.diff the patch installed cleanly. I then did a "make xconfig" and turned on mpls, followed by "make dep && make". The make eventually dies with this message: cc -D__KERNEL__ -I/usr/src/linux-2.4.18-3-MPLS/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -Wno-unused -pipe -mpreferred-stack-boundary=2 -march=i686 -DKBUILD_BASENAME=mpls_output -c -o mpls_output.o mpls_output.c mpls_output.c: In function `mpls_output': mpls_output.c:193: structure has no member named `mpls_moi' mpls_output.c:198: structure has no member named `mpls_moi' mpls_output.c: In function `mpls_set_nexthop': mpls_output.c:220: structure has no member named `mpls_moi' make[3]: *** [mpls_output.o] Error 1 make[3]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net/mpls' make[2]: *** [first_rule] Error 2 make[2]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net/mpls' make[1]: *** [_subdir_mpls] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.18-3-MPLS/net' make: *** [_dir_net] Error 2 Note that I tried this patch against a stock 2.4.18 kernel source from kernel.org, and it worked fine. It only fails against the RedHat 7.3 2.4.18-3 kernel source, which is unfortunately the one I have to use. Ideas? Thanks, P. -- Phil Hollenback pho...@ne... AIM: phreno13 |