Help with IPv6 router config...

Juan Luis Baptiste juancho at metallica.com
Sun Nov 11 21:00:21 EST 2001


Hi,

I  think finally I understanded how click elements work, so I wroted an ipv6
router configuration that
uses
two interfaces, based in one of the configuration files that comes with click.

The router works fine, but when I try to enter a to a web page in one of the
machines in the other network

it takes arround one minute or more before the page is displayed.

ping6 and ssh works fine.

The network setup is as follows:

3ffe:1ce1:2:0:200::2
               |
               |
3ffe:1ce1:2:0:200::1
3ffe:1ce1:2::2
               |
               |
3ffe:1ce1:2::1

Here is my configuration file:

extern_nda::IP6NDAdvertiser(3ffe:1ce1:2:0:200::1/128	00:50:8b:65:2c:23,
                            fe80::250:8bff:fe65:2c23/128	00:50:8b:65:2c:23);
extern_nds:: IP6NDSolicitor(fe80::250:8bff:fe65:2c23, 00:50:8b:65:2c:23);

intern_nda::IP6NDAdvertiser(3ffe:1ce1:2::2/128	00:60:97:C0:D4:74,
				fe80::260:97ff:fec0:d474/128	00:60:97:C0:D4:74);
intern_nds :: IP6NDSolicitor(fe80::260:97ff:fec0:d474,00:60:97:C0:D4:74);

rt :: LookupIP6Route(
		3ffe:1ce1:2::2/128 ::0 0,
		3ffe:1ce1:2:0:200::1/128 ::0 0,
		3ffe:1ce1:2::/80 ::0 1, //route to internal network (eth1)
		3ffe:1ce1:2:0:200::/80 ::0 2, //route to external network (eth0)
		0::ffff:0:0/96 ::0 3,
		::0/0 ::c0a8:1 3);

intern_class,extern_class::Classifier(12/86dd 20/3aff 54/87,
	         12/86dd 20/3aff 54/88,
		 12/86dd);
externq,internq:: Queue(1024);

FromDevice(eth0)//-> Print(viene_de_eth0, 200)
		->extern_class;
FromDevice(eth1)-> Print(viene_de_eth1, 200)
		->intern_class;

extern_class[0]-> Print(ok-ext0, 200)
	-> extern_nda
	-> externq
	-> ToDevice(eth0);
extern_class[1] -> Print(ok-ext1, 200)
	-> [1]extern_nds;
extern_class[2] -> Print(ok-ext2, 200)
	-> Strip(14)
	-> CheckIP6Header(3ffe:1ce1:2:0:200::ffff 3ffe:1ce1:2::ffff)
	-> GetIP6Address(24)
	-> rt;

intern_class[0]-> Print(ok-int0, 200)
	-> intern_nda
	-> internq
	-> ToDevice(eth1);
intern_class[1] -> Print(ok-int1, 200)
	-> [1]intern_nds;
intern_class[2] -> Print(ok-int2, 200)
	-> Strip(14)
	-> CheckIP6Header(3ffe:1ce1:2:0:200::ffff 3ffe:1ce1:2::ffff)
	-> GetIP6Address(24)
	-> rt;

rt[0] 	-> Print(route0-ok, 200)
	-> Discard;  //packets for the router, discard
rt[1]	-> Print(route1-ok, 200)
	-> DropBroadcasts
	-> intern_dh:: DecIP6HLIM
	-> [0]intern_nds;
rt[2]	-> Print(route2-ok, 200)
	-> DropBroadcasts
	-> extern_dh:: DecIP6HLIM
	-> [0]extern_nds;
rt[3]	-> Print(route3-ok, 200)
	-> Discard;

extern_dh[1]-> Print(icmp_error_extern, 200)
	-> ICMP6Error(3ffe:1ce1:2:0:200::1, 3, 0)
	-> [0]extern_nds;

intern_dh[1]-> Print(icmp_error_intern, 200)
	-> ICMP6Error(3ffe:1ce1:2::2, 3, 0)
	-> [0]intern_nds;

extern_nds[0]	-> Print(extern_nds0-ok, 200)
	-> externq
	-> ToDevice(eth0);
intern_nds[0]	-> Print(intern_nds0-ok, 200)
	-> internq
	-> ToDevice(eth1);


Thanks!

Juan Luis.
http://www.merlinux.org

________________________________________________________
Get your Private, Free E-mail from Metallica at http://mail.metallica.com/
powered by
XingMail.

Check out the Metallica Official Web Site at http://www.metallica.com




More information about the click mailing list