Date: Mon, 17 Mar 2025 07:38:45 -0400 From: Karl Denninger <karl@denninger.net> To: freebsd-net@freebsd.org Subject: Re: mpd5: tun0 always get IPv6 address via SLAAC although not configured Message-ID: <db513778-1d28-4945-a34e-d72c5a969589@denninger.net> In-Reply-To: <20250317110444.2d1e4c28@thor.sb211.local> References: <20250317110444.2d1e4c28@thor.sb211.local>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a cryptographically signed message in MIME format. --------------ms030803030709010808030805 Content-Type: multipart/alternative; boundary="------------wtRp04KZ0UabDkpzWJpzjWsS" --------------wtRp04KZ0UabDkpzWJpzjWsS Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMy8xNy8yMDI1IDA2OjA0LCBBIEZyZWVCU0QgVXNlciB3cm90ZToNCj4gSGVsbG8sDQo+ DQo+IEknbSBwbGF5aW5nIGFyb3VuZCB3aXRoIGEgdXNlZnVsIHNldHVwIG9mIGEgc21hbGwg cm91dGVyL2ZpcmV3YWxsIGFwcGxpYW5jZSBiYXNlZCBvbiBGcmVlQlNEDQo+IDE0LVNUQUJM RSBhbmQgaXBmdy4NCj4gTXkvb3VyIElTUCBwcm92aWRlcyAoYWxsZWdlZCkgOjovNTYgcHJl Zml4ZXMuIFRoZSBoYXJkd2FyZSB1c2VkIGhhcyBzZXZlcmFsIEludGVsIGkyMTAgYmFzZWQN Cj4gTklDcywgb24gb2YgdGhlbSBpcyBmYWNpbmcgdG93YXJkcyB0aGUgSVNQIGFzIHVzdWFs IHdpdGggYSBjbG9uZWQgcHNldWRvIGRldmljZSBjYWxsZWQgInR1bjAiDQo+IChpbiBmYWN0 IGEgcmVuYW1lZCBuZzAgZGV2aWNlKS4NCj4NCj4gVGhlIElTUCBpcyBjaGFuZ2luZyBib3Ro IElQdjQgYW5kIElQdjYgYWRkcmVzc2VzIGFmdGVyIGEgMjRoIHBlcmlvZCENCj4NCj4gT2J0 YWluaW5nIGEgOjovNTYgcHJlZml4IGFuZCBkZWxlZ2F0aW5nIHRoZSBwcm9wZXIgbmV0d29y ayBwcmVmaXhlcyB0byB0aGVpciBOSUNzIHdvcmtzIHdpdGgNCj4gcG9ydCBuZXQvZGhjcDYg YW5kIEZyZWVCU0QncyBib2FyZCB0b29sIHJ0YWR2ZCg4KS4gVGhlIHNldHVwIGlzIHRleHRi b29rIGxpa2UgYW5kIHN0cmFpZ2h0DQo+IGZvcndhcmQuDQo+DQo+IEFsbCBpbndhcmQgZmFj aW5nIE5JQ3MgZG8gaGF2ZSB0aGUgc2FtZSBwcmVmaXgsIGEgaW5kaXZpZHVhbCA4LWJpdCBu ZXR3b3JrIHBvcnRpb24gYW5kIGENCj4gKHNhZGx5IG5vdCBmdXJ0aGVyIGNvbnRyb2xsYWJs ZSkgNjRiaXQgU0xBQUMgaG9zdCBhZGRyZXNzLg0KPg0KPiBQcm9ibGVtOiBJIG5ldmVyIG1h bmFnZWQgdG8gb2J0YWluIHRoZSA6Oi81NiBwcmVmaXggb24gdHVuMCEgV2hlbiB1c2luZyAi cnRzb2wgLWkgdHVuMCIgd2l0aGluDQo+IHRoZSBsaW5rLXVwLnNoIHNjcmlwdCBvZiBtcGQ1 LCB0aGUgSVNQIGZhY2luZyB0dW4wIGludGVyZmFjZSBfYWx3YXlzXyBpcyBjb25maWd1cmVk IHZpYSBTTEFBQw0KPiAoREhDUHY2IG9uIHR1bjAgc2VlbXMgbm90IHRvIHdvcmsgaW4gbXkg Y2FzZSkgYW5kIGl0cyBwcmVmaXggaXMgQUxXQVlTIGRpZmZlcmVudCBmcm9uIHRoYXQNCj4g b2J0YWluZWQgbGF0ZXIgdmlhIG5ldC9kaGNwNiBhbmQgZGVsZWdhdGVkIHZpYSBydGFkdmQu IFRoaXMgY2F1c2VzIHNvbWUgdHJvdWJsZSBpZGVudGlmeWluZyBteQ0KPiByb3V0ZXIgZm9y IHNzaCBhY2Nlc3MgZnJvbSB0aGUgb3V0c2lkZSB3b3JsZCB1dGlsaXppbmcgREROUy4NCj4N Cj4gV2VsbCwgc29tZSBpbnRlcm5ldCBIb3dUbydzIHN1Z2dlc3Qgbm90IHRvIHByb3ZpZGUg dHVuMC9JU1AgZmFjaW5nIE5JQyB3aXRoIGFueSBhZGRyZXNzDQo+IChleGNlcHQgSVB2NCBh ZGRyZXNzLCB3aGljaCBpcyBkb25lIGJ5IGRlZmF1bHQgdmlhIG1wZDUpLiBTbyBJIGRlY2xh cmVkIG9uZSBvZiB0aGUgaW5uZXIgTklDcw0KPiBhcyB0aGUgaW50ZXJmYWNlIGZvciByZW1v dGUgYWNjZXNzLiBCdXQgdGhlcmUgc2VlbXMgYW4gb2RkaXR5Og0KPg0KPiBubyBtYXR0ZXIg d2hhdCBJIGNvbmZpZ3VyZSBmb3IgbXBkNSwgdHVuMCBBTFdBWVMgb2J0YWlucyBhIFNMQUFD IElQdjYgYW5kIGFmdGVyIHNldmVyYWwgZGF5cw0KPiB0aGVyZSBhcmUgc2V2ZXJhbCB2YWxp ZCAodGVtcG9yYXJ5KSBJUHY2IGFkZHJlc3Nlcywgbm9uZSBvZiB0aGVtIGlzIG1hcmtlZCAi ZGV0YWNoZWQiIG9yDQo+ICJkZXByZWNhdGVkIi4NCj4gSG93IHRvIG1ha2UgbXBkNSB0byBz dXBwcmVzcyBvYnRhaW5pbmcgYW55IElQdjYgYWRkcmVzcz8NCj4gQW5kOiB3aHkgaXNuJ3Qg dGhlIElQdjYgYWRkcmVzcyBkZXByZWNhdGVkPw0KPg0KPiBJbiBteSBmaXJzdCBhdHRlbXB0 cyBjb25maWd1cmluZyB0aGUgdHVuMCBpbnRlcmZhY2UsIEkgdXNlZCBydHNvbCg4KSBmb3Ig b2J0YWluaW5nIGFuIElQdjYNCj4gYWRkcmVzcyB3aGljaCB3b3JrZWQgdmVyeSBxdWlja2x5 IChhbmQgcHJvdmlkZWQgdGhpcyBhZGRyZXNzIHRvIG15IERETlMgcHJvdmlkZXIpLiBJbiBy b3VnaGx5IDYNCj4gb3V0IG9mIDEwIGNhc2VzIHRoZSBvbGQgSVB2NiBhZGRyZXNzIGlzIG1h cmtlZCBkZXByZWNhdGVkL2RldGFjaGVkLiBCdXQgaW4gNCBvdXQgb2YgMTAgY2FzZXMsDQo+ IHRoZSBvdXR3YXJkIGZhY2luZyB0dW4wIGhhcyBhdCBsZWFzdCB0d28gdmFsaWQgYWRyZXNz ZXMgb2Ygd2hpY2ggb25lIGlzIG5vdCB2YWxpZCBhbnltb3JlIGZyb20NCj4gdGhlIHBlcnNw ZWN0aXZlIG9mIG15IElTUCENCj4NCj4gbXBkNSdzIGxpbmstdXAgc2NyaXB0IGlzIHNpbXBs eSBjb25maWd1cmluZyB0dW4wIHdpdGg6DQo+DQo+IAkvc2Jpbi9pZmNvbmZpZyAke3dhbl9p Zn0gaW5ldDYgYXV0b19saW5rbG9jYWwgLWlmZGlzYWJsZWQgYWNjZXB0X3J0YWR2IC1ub19y YWRyIHVwDQo+DQo+IChhbmQgaWYgZGVzaXJlZCBoYXZpbmcgU0xBQUMgSVB2NiBhZGRyIG9u IHR1bjA6DQo+IAkvc2Jpbi9ydHNvbCAke3dhbl9pZn0gJg0KPiBidXQgdGhpcyBpcyBvbW1p dGVkIHJpZ2h0IG5vdykuDQo+DQo+IGxpbi1kb3duLnNoIGRvZXMgbm90aGluZy4NCj4NCj4g V2h5IGlzIGRlcHJlY2F0aW5nIGZvcm1lciBhZGRyZXNzZXMgbm90IHdvcmtpbmcgaW4gYWxs IGNhc2VzPyBJcyBpdCBhIGZlYXR1cmUgdGhhdCB0dW4wDQo+IG1hZ2ljYWxseSBvYnRhaW5z IGFuIElQdjYgYWRkcmVzcyB2aWEgU0xBQUMgb24gbXBkNT8gSG93IHRvIHN1cHByZXNzIFNM QUFDIG9uIG1wZDU/DQo+DQo+IFNvcnJ5IGZvciBwb3NzaWJsZSBjb25mdXNpb25zLCBJJ20g bmV3IHRvIElQdjYgYW5kIHdvdWxkIGFwcHJlY2lhdGUgYW55IGhpbnRzIGFuZCB0aXBwcy4N Cj4NCj4gS2luZCByZWdhcmRzIGFuZCB0aGFua3MgaW4gYWR2YW5jZSwNCj4NCj4gT2xpdmVy DQoNCnJ0c29sZCBpcyBydW4gb24gZW5kIG5vZGVzLCBidXQgdHlwaWNhbGx5IHNob3VsZCBu b3QgcnVuIG9uIGEgcm91dGVyIA0Kd2hpY2ggaXMgZ2V0dGluZyBhIGxhcmdlciBwcmVmaXgg dmlhIGRoY3AgYXQgYWxsLsKgIHJ0YWR2ZCBydW5zIG9uIHRoZSANCmludGVybmFsIGludGVy ZmFjZShzKSBidXQgL25vdCAvb24gdGhlIGV4dGVybmFsIG9uZTsgaXQgaXMgcmVzcG9uc2li bGUgDQpmb3IgZGlzdHJpYnV0aW5nIG9uIHlvdXIgaW50ZXJuYWwgbmV0d29yayAoYW5kIHRo dXMgcnVucyBvbiB0aGUgZ2F0ZXdheSANCmJ1dCBub3QgY2xpZW50cyk7IHJ0c29sZCBydW5z IG9uIGNsaWVudCBtYWNoaW5lcy4NCg0KSSB1c2VkIHRvIHJ1biBkaGNwNmMgdG8gZ2V0IHRo ZSAvNTYgZnJvbSBteSBJU1AsIGJ1dCBzd2l0Y2hlZCB0byBkaGNwY2QgDQphcyBpdCB3aWxs IGRvIGJvdGggSVB2NC92NiBhbmQgYXBwZWFycyB0byB3b3JrIGZpbmUuIFdpdGggZGhjcDZj IHRvIGdldCANCnRoZSAvNTYgYW5kIHRoZSAib2xkZXIiIERIQ1AgZmxhZyBmb3IgZHluYW1p YyBvbiBJUHY0IHlvdSBuZWVkIHRvIHVzZSANCnRoZSBmb2xsb3dpbmcsIGJ1dCB0aGV5IGFy ZSBub3QgdXNlZCB3aXRoIGRoY3BjZCBhcyB5b3UgY2FuIHNlZSB0aGV5IGFyZSANCm5vdyBj b21tZW50ZWQgb3V0Og0KDQojIEdldCBhIHByaW1hcnkgSVB2NCBhZGRyZXNzIG9uIHRoZSBm aXJzdCAobmVhciBzZXJpYWwgcG9ydCkgZXRoZXJuZXQgDQpwb3J0ICMgI2lmY29uZmlnX2ln YjA9ImluZXQ2IC1pZmRpc2FibGVkIGFjY2VwdF9ydGFkdiBhdXRvX2xpbmtsb2NhbCIgDQoj aWZjb25maWdfaWdiMD0iREhDUCINCg0KIyBJZiB5b3UgYXJlIHR1cm5pbmcgb24gSVB2NiB0 aGVuIHlvdSBNVVNUIHNldCBib3RoIHRoZXNlIGxpbmVzIEFORCBsb29rIA0KaW4gIyAvdXNy L2xvY2FsL2V0Yy9kaGNwNmMuY29uZiBhbmQgbWFrZSBTVVJFIHlvdSBoYXZlIHRoZSBjb3Jy ZWN0IA0KcHJlZml4IGFuZCAjIGFzc2lnbm1lbnRzIGZvciBsb2NhbCBwcmVmaXggbGVuZ3Ro LiBOb3RlIHRoYXQgd2Ugb25seSANCmFjY2VwdCByb3V0aW5nIGluZm8gIyBvbiB0aGUgV0FO IGludGVyZmFjZSwgTkVWRVIgb24gdGhlIGludGVybmFsIG9uZS4gIyANCiNpcHY2X2NwZV93 YW5pZj0iaWdiMCIgI2lmY29uZmlnX2lnYjBfaXB2Nj0iaW5ldDYgLWlmZGlzYWJsZWQgDQph Y2NlcHRfcnRhZHYgYXV0b19saW5rbG9jYWwiICNpZmNvbmZpZ19pZ2IxX2lwdjY9ImluZXQ2 IC1pZmRpc2FibGVkIA0KLWFjY2VwdF9ydGFkdiIgI2lwdjZfYWN0aXZhdGVfYWxsX2ludGVy ZmFjZXM9InllcyIgIyAjIElwdjYgcm91dGluZzsgd2UgDQpNVVNUIGJlIGFuIElQdjYgcm91 dGVyIGZvciB0aGUgSU5URVJOQUwgaW50ZXJmYWNlIHRvICMgZGlzdHJpYnV0ZSBTTEFDQyAN CklQdjYgYWRkcmVzc2VzIHRvIGNsaWVudCBtYWNoaW5lcyAjIHJ0YWR2ZF9lbmFibGU9Illl cyIgDQpydGFkdmRfaW50ZXJmYWNlcz0iaWdiMSIgIyAjIERoY3A2YyBjbGllbnQgKGdldCBJ UHY2IGFkZHJlc3Nlczsgbm90ZSANCnRoYXQgL3Vzci9sb2NhbC9ldGMvZGhjcDZjLmNvbmYg bXVzdCAjIGFsc28gYmUgZWRpdGVkIG9yIHRoaXMgd2lsbCBOT1QgDQp3b3JrISkgIyAjZGhj cDZjX2VuYWJsZT0iWWVzIiAjZGhjcDZjX2ludGVyZmFjZXM9ImlnYjAiICMgIyBFbmFibGUg DQpnYXRld2F5IGZ1bmN0aW9uYWxpdHkgZm9yIGJvdGggSVB2NCBhbmQgSVB2NiAjIGdhdGV3 YXlfZW5hYmxlPSJZRVMiIA0KaXB2Nl9nYXRld2F5X2VuYWJsZT0iWUVTIg0KDQpkaGNwY2Qg YWxzbyBoYXMgYW4gImV4aXQgaG9vayIgc2NyaXB0IGNhbGwgd2hpY2ggY2FuIGJlIHVzZWQg dG8gcHVzaCANCmNoYW5nZXMgdG8gYSBERE5TIHNlcnZlciBhbmQgc2luY2UgaXRzICJvbmUg dGhpbmcgaW5zdGVhZCBvZiB0d28iIGlmIA0KeW91J3JlIG9uIGR5bmFtaWMgYWRkcmVzc2Vz IGFuZCB1c2luZyBERE5TIGl0cyBtb3JlLWNvbnZlbmllbnQgdGhhbiANCmRlYWxpbmcgd2l0 aCBpdCBpbiBib3RoIHRoZSAiZmFjdG9yeSIgREhDUCBzb2Z0d2FyZSBmb3IgSVB2NCBhbmQg aW4gDQpkaGNwNmMgZm9yIHRoZSAiNiIgc2lkZS4NCg0KLS0gDQpLYXJsIERlbm5pbmdlcg0K a2FybEBkZW5uaW5nZXIubmV0DQovVGhlIE1hcmtldCBUaWNrZXIvDQovW1MvTUlNRSBlbmNy eXB0ZWQgZW1haWwgcHJlZmVycmVkXS8NCg== --------------wtRp04KZ0UabDkpzWJpzjWsS Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <!DOCTYPE html> <html> <head> <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF= -8"> </head> <body> <div class=3D"moz-cite-prefix">On 3/17/2025 06:04, A FreeBSD User wrote:<br> </div> <blockquote type=3D"cite" cite=3D"mid:20250317110444.2d1e4c28@thor.sb211.local"> <pre wrap=3D"" class=3D"moz-quote-pre">Hello, I'm playing around with a useful setup of a small router/firewall applian= ce based on FreeBSD 14-STABLE and ipfw. My/our ISP provides (alleged) ::/56 prefixes. The hardware used has sever= al Intel i210 based NICs, on of them is facing towards the ISP as usual with a cloned pseudo = device called "tun0" (in fact a renamed ng0 device). The ISP is changing both IPv4 and IPv6 addresses after a 24h period! Obtaining a ::/56 prefix and delegating the proper network prefixes to th= eir NICs works with port net/dhcp6 and FreeBSD's board tool rtadvd(8). The setup is textbook = like and straight forward. All inward facing NICs do have the same prefix, a individual 8-bit networ= k portion and a (sadly not further controllable) 64bit SLAAC host address. Problem: I never managed to obtain the ::/56 prefix on tun0! When using "= rtsol -i tun0" within the link-up.sh script of mpd5, the ISP facing tun0 interface _always_ is = configured via SLAAC (DHCPv6 on tun0 seems not to work in my case) and its prefix is ALWAYS di= fferent fron that obtained later via net/dhcp6 and delegated via rtadvd. This causes some t= rouble identifying my router for ssh access from the outside world utilizing DDNS. Well, some internet HowTo's suggest not to provide tun0/ISP facing NIC wi= th any address (except IPv4 address, which is done by default via mpd5). So I declared o= ne of the inner NICs as the interface for remote access. But there seems an oddity:=20 no matter what I configure for mpd5, tun0 ALWAYS obtains a SLAAC IPv6 and= after several days there are several valid (temporary) IPv6 addresses, none of them is marke= d "detached" or "deprecated".=20 How to make mpd5 to suppress obtaining any IPv6 address? And: why isn't the IPv6 address deprecated? In my first attempts configuring the tun0 interface, I used rtsol(8) for = obtaining an IPv6 address which worked very quickly (and provided this address to my DDNS p= rovider). In roughly 6 out of 10 cases the old IPv6 address is marked deprecated/detached. But i= n 4 out of 10 cases, the outward facing tun0 has at least two valid adresses of which one is n= ot valid anymore from the perspective of my ISP! mpd5's link-up script is simply configuring tun0 with: /sbin/ifconfig ${wan_if} inet6 auto_linklocal -ifdisabled accept_rtadv -= no_radr up (and if desired having SLAAC IPv6 addr on tun0:=20 /sbin/rtsol ${wan_if} & but this is ommited right now). lin-down.sh does nothing. Why is deprecating former addresses not working in all cases? Is it a fea= ture that tun0 magically obtains an IPv6 address via SLAAC on mpd5? How to suppress SLAA= C on mpd5? Sorry for possible confusions, I'm new to IPv6 and would appreciate any h= ints and tipps. Kind regards and thanks in advance, Oliver</pre> </blockquote> <p>rtsold is run on end nodes, but typically should not run on a router which is getting a larger prefix via dhcp at all.=C2=A0 rtad= vd runs on the internal interface(s) but <i>not </i>on the external one; it is responsible for distributing on your internal network (and thus runs on the gateway but not clients); rtsold runs on client machines.<br> </p> <p><span style=3D"white-space: pre-wrap">I used to run dhcp6c to get = the /56 from my ISP, but switched to dhcpcd as it will do both IPv4/v6 an= d appears to work fine. With dhcp6c to get the /56 and the "older" DHCP = flag for dynamic on IPv4 you need to use the following, but they are not = used with dhcpcd as you can see they are now commented out:</span></p> <p><span style=3D"white-space: pre-wrap"># Get a primary IPv4 address= on the first (near serial port) ethernet port # #ifconfig_igb0=3D"inet6 -ifdisabled accept_rtadv auto_linklocal" #ifconfig_igb0=3D"DHCP" </span></p> <p><span style=3D"white-space: pre-wrap"># If you are turning on IPv6= then you MUST set both these lines AND look in # /usr/local/etc/dhcp6c.conf and make SURE you have the correct prefix an= d # assignments for local prefix length. Note that we only accept routing = info # on the WAN interface, NEVER on the internal one. # #ipv6_cpe_wanif=3D"igb0" #ifconfig_igb0_ipv6=3D"inet6 -ifdisabled accept_rtadv auto_linklocal" #ifconfig_igb1_ipv6=3D"inet6 -ifdisabled -accept_rtadv" #ipv6_activate_all_interfaces=3D"yes" # # Ipv6 routing; we MUST be an IPv6 router for the INTERNAL interface to # distribute SLACC IPv6 addresses to client machines # rtadvd_enable=3D"Yes" rtadvd_interfaces=3D"igb1" # # Dhcp6c client (get IPv6 addresses; note that /usr/local/etc/dhcp6c.conf= must # also be edited or this will NOT work!) # #dhcp6c_enable=3D"Yes" #dhcp6c_interfaces=3D"igb0" # # Enable gateway functionality for both IPv4 and IPv6 # gateway_enable=3D"YES" ipv6_gateway_enable=3D"YES"</span></p> <p><span style=3D"white-space: pre-wrap">dhcpcd also has an "exit hoo= k" script call which can be used to push changes to a DDNS server and sin= ce its "one thing instead of two" if you're on dynamic addresses and usin= g DDNS its more-convenient than dealing with it in both the "factory" DHC= P software for IPv4 and in dhcp6c for the "6" side. </span></p> <div class=3D"moz-signature">-- <br> Karl Denninger<br> <a href=3D"mailto:karl@denninger.net" class=3D"moz-txt-link-freetex= t">karl@denninger.net</a><br> <i>The Market Ticker</i><br> <font size=3D"-2"><i>[S/MIME encrypted email preferred]</i></font><= /div> </body> </html> --------------wtRp04KZ0UabDkpzWJpzjWsS-- --------------ms030803030709010808030805 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwEAAKCC C4owggWZMIIDgaADAgECAhRZU8dKdMneRI1Vq5kv0k54Q5rQuDANBgkqhkiG9w0BAQsFADB2 MQswCQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRYwFAYDVQQKDA1EZW5uaW5nZXIu TmV0MRcwFQYDVQQDDA5EZW5uaW5nZXIgUm9vdDEiMCAGCSqGSIb3DQEJARYTYWRtaW5AZGVu bmluZ2VyLm5ldDAeFw0yNDA1MDkyMTA4MDNaFw00NDA1MDQyMTA4MDNaMF0xCzAJBgNVBAYT AlVTMRIwEAYDVQQIDAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNV BAMMGURlbm5pbmdlci5OZXQgU2lnbmluZyBJbnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDbR0tSiuLG5HPfo+cWtdeYQ8jc8Bjfuo0GTcNRT0glHnH1apUtInIktUknEZDH ohahInN+mMBdKg54FCHOiYZrJbyxBIo9FwX7hRmOc+spxmSYWnOd2E/YcGInMK4ZpjPzldzB Yt1n3zygkhx2bssxTJS3x4nv1qAXfLSZd1VwqoQufifEoPyTtymkkvHLv86vLgqAqooM/cXc 4LSIQ5u2uM308n42r8RkKtp7X1v9fJW8oRZN2XnFZtiUPH44YY2rHqyN2Hea9Y3+TXbldXjo xhPHTA+JYVFq8KTmbQBqU7YcMhlIG0cSxPeFLMxnP6pqPcIVTAlK+a6YGRFppfjZAgMBAAGj ggE2MIIBMjAdBgNVHQ4EFgQUH+VuxXhBxaJAQrvDekwkH91hBi4wgbMGA1UdIwSBqzCBqIAU RFYC4p6L6KITnEvrpx2cyt+PcMmheqR4MHYxCzAJBgNVBAYTAlVTMRIwEAYDVQQIDAlUZW5u ZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5OZXQxFzAVBgNVBAMMDkRlbm5pbmdlciBSb290 MSIwIAYJKoZIhvcNAQkBFhNhZG1pbkBkZW5uaW5nZXIubmV0ghQZE7NBItWtQsCouuwU6jZ+ HPPwnjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjA6BgNVHR8EMzAxMC+gLaAr hilodHRwOi8vd3d3LmRlbm5pbmdlci5uZXQvcm9vdC1yZXZva2VkLmNybDANBgkqhkiG9w0B AQsFAAOCAgEAfFbhPc82AfhyUqONs7IccYD36w+OP4nQgwfC4IWf3y/aQAZ2Zk6IITzYqwf7 PFM0bJRT3zi7xyetolqHDhfMJvnOQWpITZiyM/FSKwIvuBsy/uJUqPuqui4XQMYoSbAA1qmI MW/z7VZZHwaRFoeWE40UirYcf0fNcooBZ72bmd+iBaVyjtZvky0Vgcz0eC6e6LR5kNb23yC6 TkyQIlGyQkK5/afXUYFzk49rOHVbVyxW3oXRfq8Ow6HCrpDGAS8p84S04MFwBVAUfbe4aXs3 bampaI2LzKgkVywyFP14LSvvdjCfLYfnLy1Z9hm2EHMqNHA2tCGdRhWp2d7aZC1MYFqng0ZS fjPJjqHrI1qPU0p6k9A1GxAtrQlL2v/IUzUnMZkiawFV3qlxMGZf/kTYTUOcJhx1KU4zSLHu 80qO7ldRpp5gHssCAGFbeTu2gp6LxfmaFhLPDBJ1VGfdPx9lUrU/9OcoHczcl5x2Rb8IUZyX 9elzP5WdAU8p5R/DLlOAq24VcabhFtYBCA2dOESLupSfWKNQuJCN/1gz7ysSc+mjnnPV77IO mpszJfkFFJEDNJlGIVKX1vwwygtC/9Ulox8frgbZlRAYAgDc/YbOBFxticVVre0Y3Ujx6Kzb tkgZRlgfdZWbT1W5smncqJxg5qAL8e/yTb3fCe2nJ0jhiP4wggXpMIIE0aADAgECAhMAmNFt CiCF3j+FwQLYtBTmGjzkMA0GCSqGSIb3DQEBCwUAMF0xCzAJBgNVBAYTAlVTMRIwEAYDVQQI DAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNVBAMMGURlbm5pbmdl ci5OZXQgU2lnbmluZyBJbnQwHhcNMjQwNTEwMTkyNjU5WhcNMjkwNTA5MTkyNjU5WjBXMQsw CQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRcwFQYDVQQKDA5LYXJsIERlbm5pbmdl cjEbMBkGA1UEAwwSa2FybEBkZW5uaW5nZXIubmV0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A MIICCgKCAgEAvh1UssVbSYctzobPjwBkbjv/w4WvQNepeRTwE6+sLnXvc41+X9pa5EclPL4Q l02Vu1m71mSqXGfK9HbWZoivbhefBHOoYb35MSc24PelhwcORbpneWoWc7giQ7QgFlvEe/yj fs8M0H9fgdzFS5m2lwBQbis8kioSjHB2yt/8I1GE4Mvt1Cur9kga6ML5FAQvo8TYN1stdhrE 13FEv/BWCF4FVT4H2Wa2ySW+R1jkKb74SC6Twg98bGCRTShD5bVylh0+0LXNhzaopIDcI/KK jm/j3mRjIlmqbGrSpvJsbjjhjhAYQKE1U8FB5TDU4OkFAibblhQit/KjgspPR2o/vOpVFPER uhZEV1oDGzUJtZlkREIcN2sYBi0p7Y4585ya+b7L10mEenPlyi3eSkGXEuiy/BR2DY6lShwW DPoQ5602TKmttCSwBdWGoLrQ4jEVEVNt4lku2wPbTHF3KpHJU0g7RbcWoUYn10SOxKathkir hF3v9U32+QhPELGwqRrH0sL9rWf0qalRtPDHUYl8TebZmYkFqNeSMlqHijl5f4SsQPSj7gx5 4F19Ntm9ZcvuWTmW8QQGWTKHeMuG+BYkVIUSPe6/ZQsbD/xDx7rkyGfNgWIa4W7Wm/B7kaNq H53tk3wFmNgZQOxMTPF0oTHfW0T2azU6JD0D1AlgoAnSAE0CAwEAAaOCAaYwggGiMDoGCCsG AQUFBwEBBC4wLDAqBggrBgEFBQcwAYYeaHR0cDovL29jc3AuZGVubmluZ2VyLm5ldDo3Nzc3 MAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgXgMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr BgEFBQcDBDAzBglghkgBhvhCAQ0EJhYkT3BlblNTTCBHZW5lcmF0ZWQgQ2xpZW50IENlcnRp ZmljYXRlMB0GA1UdDgQWBBSxJZjVnlYLAT3uzvDYgc4742J6UTCBswYDVR0jBIGrMIGogBQf 5W7FeEHFokBCu8N6TCQf3WEGLqF6pHgwdjELMAkGA1UEBhMCVVMxEjAQBgNVBAgMCVRlbm5l c3NlZTEWMBQGA1UECgwNRGVubmluZ2VyLk5ldDEXMBUGA1UEAwwORGVubmluZ2VyIFJvb3Qx IjAgBgkqhkiG9w0BCQEWE2FkbWluQGRlbm5pbmdlci5uZXSCFFlTx0p0yd5EjVWrmS/STnhD mtC4MB0GA1UdEQQWMBSBEmthcmxAZGVubmluZ2VyLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEA TrQ45/tBN3SiuqItFv/V+CF3h7Hxe0YLsL+A/P+q9ZhxIscaNjaclgQhPA+rUr+l8DGoXJ/w yAl1E0SSBK+9phIc/9xFOBg3rCy4ngubzP+lHS1t03nMCBSUNsu5qPzqLBPiKaPabUu3Gr9o koRezSszgM3/zNJfr8cMO93csCK/fBccsMx5q+3nxB5XeT7UciicjfEzUA4m2mQxBmGk9SSU 147Gy8UmdSq57Tw82KqUrQ1pJ6IOzVPLREpwlqGbHykSU3MwtPYPtfQeFVjvO/XcWvoFQjbV UyhzAqMMYFudxoVLlJQiAgU38OScTLDgKxCO41h7VOjb2mss0zHndzGCBZUwggWRAgEBMHQw XTELMAkGA1UEBhMCVVMxEjAQBgNVBAgMCVRlbm5lc3NlZTEWMBQGA1UECgwNRGVubmluZ2Vy Lm5ldDEiMCAGA1UEAwwZRGVubmluZ2VyLk5ldCBTaWduaW5nIEludAITAJjRbQoghd4/hcEC 2LQU5ho85DANBglghkgBZQMEAgMFAKCCAvIwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAc BgkqhkiG9w0BCQUxDxcNMjUwMzE3MTEzODQ1WjBPBgkqhkiG9w0BCQQxQgRA3VVvwyKqwLEJ 4Sj6y7bnW40/CJhbIZruFYj9BIaOrQcbwMvX+4FGfbQmGFD4LCfcgwlDmDHPv56iW8PBXRue ujCBgwYJKwYBBAGCNxAEMXYwdDBdMQswCQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2Vl MRYwFAYDVQQKDA1EZW5uaW5nZXIubmV0MSIwIAYDVQQDDBlEZW5uaW5nZXIuTmV0IFNpZ25p bmcgSW50AhMAmNFtCiCF3j+FwQLYtBTmGjzkMIGFBgsqhkiG9w0BCRACCzF2oHQwXTELMAkG A1UEBhMCVVMxEjAQBgNVBAgMCVRlbm5lc3NlZTEWMBQGA1UECgwNRGVubmluZ2VyLm5ldDEi MCAGA1UEAwwZRGVubmluZ2VyLk5ldCBTaWduaW5nIEludAITAJjRbQoghd4/hcEC2LQU5ho8 5DCCAVcGCSqGSIb3DQEJDzGCAUgwggFEMAsGCWCGSAFlAwQBKjALBglghkgBZQMEAQIwCgYI KoZIhvcNAwcwDQYIKoZIhvcNAwICAQUwDQYIKoZIhvcNAwICAQUwBwYFKw4DAgcwDQYIKoZI hvcNAwICAQUwBwYFKw4DAhowCwYJYIZIAWUDBAIBMAsGCWCGSAFlAwQCAjALBglghkgBZQME AgMwCwYJYIZIAWUDBAIEMAsGCWCGSAFlAwQCBzALBglghkgBZQMEAggwCwYJYIZIAWUDBAIJ MAsGCWCGSAFlAwQCCjALBgkqhkiG9w0BAQEwCwYJK4EFEIZIPwACMAgGBiuBBAELADAIBgYr gQQBCwEwCAYGK4EEAQsCMAgGBiuBBAELAzALBgkrgQUQhkg/AAMwCAYGK4EEAQ4AMAgGBiuB BAEOATAIBgYrgQQBDgIwCAYGK4EEAQ4DMA0GCSqGSIb3DQEBAQUABIICALE48/xPlLvioR/0 hGXd7AZkkalh6Chfp8oh8X/1XzEpfWDuAP5tO1p93NbDG/L0d4cMEIlecEGJcz71QsZBCqMh VYX59Q0GHbUpTRgMgtrf6F4NPRFL4s5Dsyqf7SDI+6NwYhFASKo4+54yMjtqsodP5Vcf1qOy YIbjSv2W9nJtgR8lswMRsvfOCHI3jhA18dyw3jGOGzf8XaruwbIdR9OSZ9Cosek72MJA7SsD FXLnyLBU5jVVET0tIcP8IjVL82ek1ByQ2cwhcgp7RIj0stWBqbvCnigqCUYwnESfo/qj8Hee 4yl8WpzHVGdXg1DFbCCDDrLo600J/cPq5DFOdI+6xWbSR9K2rxrjBY/PuFeEV62ptcMPSxOa RnsfNOyIoPhrE7HPP1fSpMOApc3i+0Tb7HC58KInuv8tqN4tTYNctP0QZ7SCR9uiVEObKf03 308CMzwAmSXbYXOnU5CLUbXjUYIGvlDQbvEaYT5yhLiEBdQSiqXowpTcjdKtCudCFS2AhptX Jb722VumuQ5LPxRGCC8+AoDmIwA7aFBRCfZekOUwZNPRa8pqUw0xKQur+Cp1WLaqE/sMGMgR DjltuS1u5n3HjCSbUK20qQqcjsefR6i8lBmgolol/GtNysPX+L3OoDyuFGTkDhVkK1JbWg0p 1XjaatSk3gxXav5cBl36AAAAAAAA --------------ms030803030709010808030805--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?db513778-1d28-4945-a34e-d72c5a969589>