Dank voor het geduld en meedenken
On 25 September 2021 23:24 Geert Stappers, wrote: > On Sat, Sep 25, 2021 at 09:04:26AM +0200, Gijs Hillenius wrote: >> Goedenmorgen! >> >> Tijd voor een update. Er zit een (klein) beetje schot in, maar ik ben er >> nog niet. >> >> /me veegt lei schoon, huidige configuratie onderaan. >> >> >> A) IPv4 lijkt het te doen. >> >> Met ping4 kom ik voorbij de server. En, ik kan (als voorbeeld) met ssh >> -4 een-vri...@shell.xs4all.nl bereiken, en dan toont het me dat ik kom >> vanaf 144.76.204.189, zoals de bedoeling is. >> >> Mijn conclusie: masquerading werkt, >> en de firewalld doet zijn werk. Voor IPv4. > > Ja, er zal sprake zijn van masquerading. > Waar het gebeurd heeft het verhaal nog niet vertelt. > Is het misschien iets wat "ADSL modem router" doet? Goede vraag. Belgacom/Proximus doet inderdaad NAT voor IPv4 en IPv6, en roteert (ongeveer 1 keer per jaar) de IP addressen. Als ik op de client Wireguard *niet* aanzet, dan is het antwoord van ssh -4 shell.xs4all.nl dat het verkeert komt vanaf 109.146.128.183 zet ik Wireguard aan, dan komt het dus van mijn servertje. >> b) IPv6 gaat gedeeltelijk goed. >> >> Zowel client en server kan ik nu heen en weer met ping6 bereiken. Maar >> ik kom niet vanaf de client voorbij de server, niet met ping6, maar ook >> niet met ssh. Bijvoorbeeld >> >> ssh -6 weer-die-vri...@shell.xs4all.nl >> (knip) >> debug1: Connecting to shell.xs4all.nl [2001:888:0:1::9] port 22. >> >> en dan stilte, tot ik ^C doe. > > Er zal ook masquerading nodig zijn. Dan wel iets anders zodat "local > addresses" ( fc80:: ) niet meer lokale adressen zijn. > > > > >> De configuratie van de client - let op, er staan twee mogelijke IPv[4,6] >> reeksen, ze doen het beiden (niet tegelijk, uiteraard). >> >> ,---- >> | [Interface] >> | Address= 10.93.15.2/24, fc80::b85f:d925:971e:110f/64 >> | # een alternatief, werkt ook: Address = 10.66.66.2/24,fd42:42:42::2/64 >> | PrivateKey = <privatekey> >> | >> | [Peer] >> | PublicKey = P3GrgaFCxj6gc6CnOUPo8vxBtKaOcKa7wa8LoL1oUl0= >> | Endpoint = [2a01:4f8:200:546b::9e15:1]:51820 >> | AllowedIPs = 0.0.0.0/0, ::/0 >> | PersistentKeepalive = 25 >> `---- >> >> en die van de server: >> >> ,---- >> | Interface] >> | Address = 10.93.15.1/24, fc80::b85f:d925:971e:109f/64 >> | # alternatief, ook goed: Address = 10.66.66.1/24,fd42:42:42::1/64 >> | PrivateKey = <privatekey> >> | ListenPort = 51820 >> | >> | [Peer] >> | PublicKey = nRwfI98C+AFDaLZuaF1i7YWrj7yQDHrQO07XvivGn2U= >> | # alternatief: AllowedIPs = 10.66.66.2/32,fd42:42:42::2/128 >> | AllowedIPs = 10.93.15.2/32, fc80::b85f:d925:971e:110f/128 >> `---- >> >> In de spaarzame vrije tijd heb ik van alles nagelopen. >> > ... IPv4 ... >> >> Dan spelde ik https://wiki.debian.org/NetworkConfiguration: mist mijn >> static configured ethernet device (die van de oops) soms "accept_ra 2" >> (ik begrijp het helaas nog niet helemaal) >> >> sysctl net.ipv6.conf.all.accept_ra=2 getest >> >> Maar het maakt voor WireGuard niets uit. >> >> Ik zie ook /niets/ relevants in de logs (mezelf kennende zal het er toch >> wel staan). >> >> Hier een paar van de huidige IPv6 instellingen op de server: >> >> sysctl -a | grep -E 'ipv6.*\.(forwarding|accept_ra) =' >> net.ipv6.conf.all.accept_ra = 1 >> net.ipv6.conf.all.forwarding = 1 >> net.ipv6.conf.default.accept_ra = 1 >> net.ipv6.conf.default.forwarding = 1 >> net.ipv6.conf.eth0.accept_ra = 0 >> net.ipv6.conf.eth0.forwarding = 1 >> net.ipv6.conf.lo.accept_ra = 1 >> net.ipv6.conf.lo.forwarding = 1 >> net.ipv6.conf.wg0.accept_ra = 1 >> net.ipv6.conf.wg0.forwarding = 1 > > > Met de diverse 'forwarding = 1' ben ik het mee eens. > > Wat ik hier van de "accept router advertizing" moet vinden, > weet ik nog niet. > > > >> Waarom doe ik al die moeite om Wireguard ook via IPv6 te doen? Tja: ik >> wil het gewoon in orde hebben, het is net als het strijken van je >> overhemden. In België wordt IPv6 gewoon goed ondersteund, het werkt goed >> op mijn LAN, het doet het uitstekend in Debian. WireGuard kan het, dus >> waarom zou ik het niet doen? > > Met alle respect: "Your logic is flawed" ... zeer wel mogelijk > Weet dat ik het ook een uitdagend probleem vind. > Mijn insteek is wel "Waar gaat het kapot?" (vermoeden: Geen NAT) > > Gijs zijn insteek is meer "Hoe krijg ik het werkend?" > > > Als we roepen "Het gaat niet" komt de mensheid nooit vooruit. Tja uhm. Beschouw de twee als synonym? > > >> op de server: >> >> ip -6 route >> ,---- >> | ::1 dev lo proto kernel metric 256 pref medium >> | 2a01:4f8:200:546b::/64 dev eth0 proto kernel metric 256 pref medium >> | fd42:42:42::/64 dev wg0 proto kernel metric 256 pref medium > Dat komt niet overeen met > | Address = 10.93.15.1/24, fc80::b85f:d925:971e:109f/64 > Eventueel wel met > | # alternatief, ook goed: Address = 10.66.66.1/24,fd42:42:42::1/64 Goed gezien. Ik had inmiddels die twee reeksen omgewisseld. >> | fe80::/64 dev eth0 proto kernel metric 256 pref medium >> | default via 2a01:4f8:200:546b::3 dev eth0 metric 1024 onlink pref medium >> `---- >> >> Mij valt op dat ssh -6 hierboven wel weet welk IP address ie moet >> hebben. >> >> /etc/resolf.conf op de server (wg0 is up) >> nameserver 2606:4700:4700::1111 >> nameserver 1.1.1.1 >> >> op de client (wg0 is eveneens up) >> search home >> nameserver 192.168.1.1 >> >> dank voor de aandacht! > > Output van `ip -6 route` op client ontbrak. op de client met WG aan: ip -6 route ::1 dev lo proto kernel metric 256 pref medium 2a02:a03f:6b2d:b400::/64 dev wlp0s20f3 proto ra metric 600 pref medium 2a02:a03f:6b2d:b400::/56 via fe80::6a15:90ff:fe0c:1641 dev wlp0s20f3 proto ra metric 600 pref medium fd42:42:42::/64 dev wg0 proto kernel metric 256 pref medium fe80::/64 dev wlp0s20f3 proto kernel metric 600 pref medium default via fe80::6a15:90ff:fe0c:1641 dev wlp0s20f3 proto ra metric 600 pref medium >> Vraag: Hoe tover ik op de wireguard server informatie tevoorschijn die >> toont waarom het IPv6 verkeer stopt bij de server. Iemand suggesties? > > Het echte probleem^Wuitdaging is connectie tussen wireguard client en > IPv6 host voorbij wireguard server. Of dat IPv6 verkeer stopt bij de > wireguard server is nog niet gebleken, het kan ook zijn de > netwerkpakketen verder op verloren gaan. > > >> Tips zijn (zeer) welkom! > > Op WGserver: sudo tcpdump -ni any port 2309 > Op WGclient: telnet host_achter_server 2309 uitput op de server van (op client) telnet xs4all.nl 2309 ,---- | tcpdump -ni any port 2309 | tcpdump: data link type LINUX_SLL2 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes | 10:01:07.351560 wg0 In IP 10.66.66.2.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717353847 ecr 0,nop,wscale 7], length 0 | 10:01:07.351590 eth0 Out IP 144.76.204.189.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717353847 ecr 0,nop,wscale 7], length 0 | 10:01:08.370230 wg0 In IP 10.66.66.2.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717354866 ecr 0,nop,wscale 7], length 0 | 10:01:08.370248 eth0 Out IP 144.76.204.189.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717354866 ecr 0,nop,wscale 7], length 0 | 10:01:10.386263 wg0 In IP 10.66.66.2.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717356882 ecr 0,nop,wscale 7], length 0 | 10:01:10.386282 eth0 Out IP 144.76.204.189.50640 > 194.109.6.93.2309: Flags [S], seq 1011808921, win 64860, options [mss 1380,sackOK,TS val 2717356882 ecr 0,nop,wscale 7], length 0 `---- uitput op de server van (op client) telnet 6 xs4all.nl 2309 ,---- | tcpdump -ni any port 2309 | tcpdump: data link type LINUX_SLL2 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes | 10:02:07.336031 wg0 In IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882373628 ecr 0,nop,wscale 7], length 0 | 10:02:07.336058 eth0 Out IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882373628 ecr 0,nop,wscale 7], length 0 | 10:02:08.370035 wg0 In IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882374662 ecr 0,nop,wscale 7], length 0 | 10:02:08.370054 eth0 Out IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882374662 ecr 0,nop,wscale 7], length 0 | 10:02:10.386058 wg0 In IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882376678 ecr 0,nop,wscale 7], length 0 | 10:02:10.386075 eth0 Out IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882376678 ecr 0,nop,wscale 7], length 0 | 10:02:14.639624 wg0 In IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882380930 ecr 0,nop,wscale 7], length 0 | 10:02:14.639642 eth0 Out IP6 fd42:42:42::2.43670 > 2001:888:0:18::93.2309: Flags [S], seq 1028934560, win 65280, options [mss 1360,sackOK,TS val 2882380930 ecr 0,nop,wscale 7], length 0 `---- > > Vervolgens > Op WGserver: sudo tcpdump -ni wg0 port 2309 > Op WGclient: telnet host_achter_server 2309 uitput op server van (op client) telnet 4 xs4all.nl 2309 ,---- | tcpdump -ni wg0 port 2309 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on wg0, link-type RAW (Raw IP), snapshot length 262144 bytes | 10:04:46.909365 IP 10.66.66.2.50642 > 194.109.6.93.2309: Flags [S], seq 4180321105, win 64860, options [mss 1380,sackOK,TS val 2717573420 ecr 0,nop,wscale 7], length 0 | 10:04:47.939298 IP 10.66.66.2.50642 > 194.109.6.93.2309: Flags [S], seq 4180321105, win 64860, options [mss 1380,sackOK,TS val 2717574450 ecr 0,nop,wscale 7], length 0 | 10:04:49.955885 IP 10.66.66.2.50642 > 194.109.6.93.2309: Flags [S], seq 4180321105, win 64860, options [mss 1380,sackOK,TS val 2717576466 ecr 0,nop,wscale 7], length 0 `---- uitput op server van (op client) telnet 4 xs4all.nl 2309 ,---- | tcpdump -ni wg0 port 2309 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on wg0, link-type RAW (Raw IP), snapshot length 262144 bytes | 10:05:09.792864 IP6 fd42:42:42::2.43672 > 2001:888:0:18::93.2309: Flags [S], seq 2619383962, win 65280, options [mss 1360,sackOK,TS val 2882556097 ecr 0,nop,wscale 7], length 0 | 10:05:10.817965 IP6 fd42:42:42::2.43672 > 2001:888:0:18::93.2309: Flags [S], seq 2619383962, win 65280, options [mss 1360,sackOK,TS val 2882557122 ecr 0,nop,wscale 7], length 0 | 10:05:12.833963 IP6 fd42:42:42::2.43672 > 2001:888:0:18::93.2309: Flags [S], seq 2619383962, win 65280, options [mss 1360,sackOK,TS val 2882559138 ecr 0,nop,wscale 7], length 0 | 10:05:16.897433 IP6 fd42:42:42::2.43672 > 2001:888:0:18::93.2309: Flags [S], seq 2619383962, win 65280, options [mss 1360,sackOK,TS val 2882563202 ecr 0,nop,wscale 7], length 0 `---- > En ook > Op WGserver: sudo tcpdump -ni eth0 port 2309 > Op WGclient: telnet host_achter_server 2309 ditto telnet 4 ,---- | tcpdump -ni eth0 port 2309 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes | 10:07:17.036282 IP 144.76.204.189.50644 > 194.109.6.93.2309: Flags [S], seq 3149583072, win 64860, options [mss 1380,sackOK,TS val 2717723555 ecr 0,nop,wscale 7], length 0 | 10:07:18.041847 IP 144.76.204.189.50644 > 194.109.6.93.2309: Flags [S], seq 3149583072, win 64860, options [mss 1380,sackOK,TS val 2717724562 ecr 0,nop,wscale 7], length 0 `---- ditto telnet 6 ,---- | tcpdump -ni eth0 port 2309 | tcpdump: verbose output suppressed, use -v[v]... for full protocol decode | listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes | 10:08:06.110814 IP6 fd42:42:42::2.43674 > 2001:888:0:18::93.2309: Flags [S], seq 2765591401, win 65280, options [mss 1360,sackOK,TS val 2882732426 ecr 0,nop,wscale 7], length 0 | 10:08:07.126090 IP6 fd42:42:42::2.43674 > 2001:888:0:18::93.2309: Flags [S], seq 2765591401, win 65280, options [mss 1360,sackOK,TS val 2882733442 ecr 0,nop,wscale 7], length 0 | 10:08:09.143819 IP6 fd42:42:42::2.43674 > 2001:888:0:18::93.2309: Flags [S], seq 2765591401, win 65280, options [mss 1360,sackOK,TS val 2882735458 ecr 0,nop,wscale 7], length 0 `----