Ispravite sukob lokalne IP adrese nakon povezivanja na VPN
Duplikat može biti na vašem LAN-u, doći iz preklapajućeg udaljenog raspona ili biti dvaput dodijeljen iz bazena tunela. Testirajte prije nego što prenumerišete.
Svaki od ovih izvještaja zvuči isto i znači nešto drugo: laptop se žali na sukob adresa, ali samo ponekad i uglavnom dok je VPN aktivan. Tri odvojena kvara proizvode tu poruku: pravi duplikat na vašem vlastitom linku, preklapanje gdje udaljena mreža koristi vaš LAN raspon i ništa se ne duplira, i tunel koji je jednu adresu dao dvama peerovima. Popravka se razlikuje u svakom slučaju, a pogrešna premješta simptom umjesto da ga ukloni. Zato odredite koji slučaj imate prije nego što bilo šta uredite.
Tri kvara s jednom porukom o grešci
Duplikat znači da dva računara na istom segmentu polažu pravo na jednu adresu. Kernel to primijeti jer odgovor na njegovu vlastitu sondu dolazi s drugog MAC-a, a šta se dalje dogodi zavisi od steka: Linux to bilježi, Windows onemogućuje interfejs i upisuje unos u sistemski dnevnik, a DHCP klijent može odbiti ponudu.
Preklapanje ne duplira nijednu adresu. Vaš LAN je 192.168.1.0/24, uredska mreža je također 192.168.1.0/24, i sada ruta do ureda pokazuje na adrese koje su istovremeno vaš printer i vaš NAS. U ARP smislu ništa nije u sukobu; paket jednostavno odlazi na pogrešan uređaj u jednoj od dvije mreže.
Sudar u bazenu je vlastita greška tunela. Dva peera su konfigurisana s ili su dobila istu adresu tunela, pa server ne može da ih razlikuje kada šalje povratni saobraćaj. Jedan od dva klijenta vidi radni handshake i nikakve podatke, što se čita kao problem rutiranja i nije.
Test 1: je li duplikat na vašem vlastitom segmentu?
Počnite popisom onoga što vaš računar zaista drži, a ne onoga čega se sjećate da ste konfigurisali. Adresa VPN adaptera privatna je za tunel i nije ista kao adresa koju vide web stranice, pa zajednički javni izlaz nije sukob.
ip -br addr
ip neigh
ip route show table all | grep -E 'wg|tun|ppp'Na Windowsu iste informacije daju ipconfig /all i Get-NetIPAddress, a keš susjeda je u arp -a. Ako je sporna adresa na fizičkom adapteru i žalba se pojavljuje bez uključenog VPN-a, VPN je posmatrač i trebate prestati da ga dijagnostikujete.
Da dokažete duplikat umjesto nagađanja, provjerite adresu s uređaja koji je ne posjeduje. arping -D šalje sondu s nultom izvornom adresom, pa odgovor s neočekivanog MAC-a dokazuje da drugi host već odgovara na tu adresu.
sudo arping -D -I eth0 -c 3 192.168.1.50Zatim pronađite vlasnika preko mrežnog administratora umjesto da sami birate drugu adresu. Statičke dodjele koje žive samo u nečijim bilješkama, printeri s fiksnom adresom i rezervacije na DHCP serveru uobičajeni su krivci, a isključen uređaj još uvijek posjeduje svoj zakup.
Test 2: preklapaju li se dvije mreže?
Uporedite prefiks koji vam tunel daje s prefiksima na vašim interfejsima. Ako je udaljeni raspon jednak vašem LAN-u ili ga sadrži, kvar je preklapanje, a znak je da host dostupan bez VPN-a nestaje ili vaš printer odgovara na uredsku adresu.
ip route get 192.168.1.10
ip -br addr showPretraga rute vam kaže koji bi interfejs kernel koristio i taj odgovor je cijela dijagnoza. Ako kaže tunel za adresu koja pripada vašem lokalnom printeru, imate preklapanje i nikakvo obnavljanje zakupa to neće promijeniti.
Postoje tri poštena izlaza i obično vam je dostupan samo jedan. Udaljena strana može maskirati saobraćaj za preklapajuću podmrežu, pa vaš klijent vidi samo adresu tunela servera. Tunel može nositi užu udaljenu prefiks koja se ne sudara s vašim LAN-om. Ili klijent može rutirati po izvornoj adresi s pravilima politike, što radi ali je krhko i teško predati kolegi.
Prenumerisanje uredske mreže rijetko je vaša odluka. Prenumerisanje vlastitog LAN-a da izbjegnete sudar veća je promjena nego što većina ljudi očekuje kad su uključeni printeri, kamere i statički hostovi.
Test 3: je li tunel jednu adresu dao dvaput?
WireGuard nema bazen adresa. Svaki peer se identificira svojim javnim ključem i prefiksima u AllowedIPs, pa se duplikat pojavljuje kad se ista adresa tunela upiše u dva unosa peera ili se isti par ključeva instalira na dva računara.
wg show all allowed-ips
wg show wg0 latest-handshakes
wg show wg0 transferBrojači saobraćaja su korisna kolona ovdje: peer koji pokazuje nedavni handshake ali nikakav prenos ili je pogrešno adresiran ili ga zasjenjuje drugi unos koji polaže pravo na isti prefiks. Stavite prefiks na tačno jedan peer i dajte svakom uređaju vlastiti par ključeva.
OpenVPN ima bazen, a uobičajeni sudar je zajednički klijentski profil s fiksnom linijom --ifconfig kopiranom na drugi računar. Tada oba klijenta traže istu adresu tunela, a server prihvata onu sesiju koju obradi prvu. Iscrpljenost bazena s --duplicate-cn daje sličan ishod kad se nekoliko sesija jednog certifikata takmiči za jedan unos.
Za ovo čitajte dnevnik servera, a ne dnevnik klijenta. Server zna koja sesija je zauzela koju adresu, a ponavljajuće adrese tamo su vidljive kao upozorenja koja nikad ne stignu do klijenta.
Popravite na izvoru, pa ponovo provjerite oba uređaja
Redoslijed je važan. Prvo popravite LAN duplikat, jer klijent koji ne može zadržati adresu ne može zadržati ni tunel. Zatim popravite obezbjeđivanje na VPN strani, jer se klijentska izmjena dodjele iz bazena poništava pri sljedećem povezivanju. Na kraju se pozabavite dupliciranim identitetima: odvojeni parovi ključeva na WireGuardu, odvojeni certifikati ili barem odvojeni profili na OpenVPN-u.
Na klijentu je mehanički dio kratak. Oslobodite i obnovite DHCP zakup ili zatražite da se adresa promijeni na serveru za rezervaciju. Ne upisujte slučajnu adresu koja izgleda slobodno.
sudo dhclient -r eth0 && sudo dhclient eth0
ipconfig /release && ipconfig /renewZatim provjerite s oba kraja, ne s jednog. Potvrdite gateway, zatim uslugu koja vam stvarno treba, zatim se ponovo povežite i ponovite. Ako su bila uključena dva uređaja, provjerite oba: premještanje jedne adrese ostavlja drugi sa zastarjelim unosima susjeda ili starim zakupom koji se kasnije vraća.
Šta ne treba raditi usput
Ne ućutkujte simptom. Otkrivanje dupliciranih adresa je ono što vas sprječava da uzmete adresu koja je već u upotrebi, a njegovo isključivanje pretvara vidljiv sukob u povremeni gubitak paketa koji je mnogo teže pratiti. Isto vrijedi i za prihvatanje upozorenja o certifikatu s neočekivanog hosta: to uopšte nije problem s adresom i preskakanje toga skriva drugi kvar.
Ne mijenjajte ni adresiranje upravljane mreže sami. Zabilježite originalnu postavku, pitajte vlasnika kada se adresa dodjeljuje centralno i držite promjenu dovoljno malom da se može poništiti. RFC 5227 pravila za otkrivanje sukoba adresa objašnjavaju šta ispravna sonda dokazuje, što je vrijedno znati prije nego sukob nazovete stvarnim.