Katrs no šiem ziņojumiem izklausās vienādi un nozīmē ko citu: klēpjdators sūdzas par adrešu konfliktu, bet tikai dažreiz, un visbiežāk tad, kad VPN ir ieslēgts. Trīs atsevišķi defekti rada šo ziņojumu: īsts dublikāts jūsu paša saitē, pārklāšanās, kur attālais tīkls izmanto jūsu LAN diapazonu un nekas netiek dublēts, un tunelis, kas vienu adresi deva diviem partneriem. Labojums katrā gadījumā atšķiras, un nepareizais pārvieto simptomu, nevis to novērš. Tāpēc pirms kaut kā labošanas izlemiet, kurš gadījums jums ir.

Trīs defekti ar vienu kļūdas ziņojumu

Dublikāts nozīmē, ka divas mašīnas vienā segmentā abas pretendē uz vienu adresi. Kodols to pamana, jo atbilde uz tā paša zondi nāk no citas MAC, un tas, kas notiek tālāk, ir atkarīgs no steka: Linux to reģistrē, Windows atspējo saskarni un ieraksta sistēmas žurnālā, un DHCP klients var piedāvājumu noraidīt.

Pārklāšanās nedublē nevienu adresi. Jūsu LAN ir 192.168.1.0/24, biroja tīkls arī ir 192.168.1.0/24, un tagad maršruts uz biroju norāda uz adresēm, kas ir arī jūsu printeris un jūsu NAS. ARP izpratnē nekas nav konfliktā; pakete vienkārši aiziet uz nepareizo ierīci vienā no diviem tīkliem.

Sadursme baseinā ir paša tuneļa kļūda. Divi partneri tika konfigurēti ar vienu un to pašu tuneļa adresi vai to saņēma, tāpēc serveris nevar tos atšķirt, sūtot atgriešanās datplūsmu. Viens no diviem klientiem redz strādājošu rokasspiedienu un nekādus datus, kas lasās kā maršrutēšanas problēma un tāda nav.

1. tests: vai dublikāts ir jūsu paša segmentā?

Sāciet ar sarakstu, kas jūsu mašīnai patiešām ir, nevis ko atceraties konfigurējis. VPN adaptera adrese ir privāta tunelim un nav tā pati adrese, ko redz vietnes, tāpēc kopīga publiska izeja nav konflikts.

ip -br addr
ip neigh
ip route show table all | grep -E 'wg|tun|ppp'

Windows tā pati informācija nāk no ipconfig /all un Get-NetIPAddress, un kaimiņu kešatmiņa ir arp -a. Ja strīdīgā adrese ir uz fiziskā adaptera un sūdzība parādās bez ieslēgta VPN, VPN ir novērotājs, un jums jāpārtrauc to diagnosticēt.

Lai pierādītu dublikātu, nevis minētu, pārbaudiet adresi no ierīces, kurai tā nepieder. arping -D sūta zondi ar nulles avota adresi, tāpēc atbilde no negaidītas MAC pierāda, ka cits saimnieks jau atbild uz šo adresi.

sudo arping -D -I eth0 -c 3 192.168.1.50

Pēc tam atrodiet īpašnieku pie tīkla administratora, nevis paši izvēlieties citu adresi. Statiskie piešķīrumi, kas dzīvo tikai kāda piezīmēs, printeri ar fiksētu adresi un rezervācijas DHCP serverī ir ierastie vaininieki, un izslēgta ierīce joprojām pieder savu nomu.

2. tests: vai abi tīkli pārklājas?

Salīdziniet prefiksu, ko tunelis jums dod, ar prefiksiem jūsu saskarnēs. Ja attālais diapazons ir vienāds ar jūsu LAN vai to ietver, defekts ir pārklāšanās, un pazīme ir tā, ka bez VPN sasniedzams saimnieks pazūd, vai jūsu printeris atbild uz biroja adresi.

ip route get 192.168.1.10
ip -br addr show

Maršruta meklēšana pasaka, kuru saskarni kodols izmantotu, un šī atbilde ir visa diagnoze. Ja tā nosauc tuneli adresei, kas pieder jūsu vietējam printerim, jums ir pārklāšanās, un neviena nomas atjaunošana to nemainīs.

Ir trīs godīgi izejas ceļi, un parasti pieejams ir tikai viens. Attālā puse var maskēt pārklājošā apakštīkla datplūsmu, tāpēc jūsu klients redz tikai servera tuneļa adresi. Tunelis var pārvadāt šaurāku attālu prefiksu, kas nesaduras ar jūsu LAN. Vai arī klients var maršrutēt pēc avota adreses ar politikas noteikumiem, kas strādā, bet ir trausls un grūti nododams kolēģim.

Biroja tīkla pārnumurēšana reti ir jūsu lēmums. Sava LAN pārnumurēšana, lai izvairītos no sadursmes, ir lielāka izmaiņa, nekā lielākā daļa cilvēku gaida, tiklīdz iesaistīti printeri, kameras un statiskie saimnieki.

3. tests: vai tunelis vienu adresi izsniedza divreiz?

WireGuard nav adrešu baseina. Katrs partneris tiek identificēts pēc sava publiskā atslēgas un prefiksiem AllowedIPs, tāpēc dublikāts parādās, kad viena un tā pati tuneļa adrese tiek ierakstīta divos partnera ierakstos vai viena un tā pati atslēgu pāris tiek instalēta divās mašīnās.

wg show all allowed-ips
wg show wg0 latest-handshakes
wg show wg0 transfer

Datplūsmas skaitītāji šeit ir noderīgā kolonna: partneris, kas rāda nesen rokasspiedienu, bet ne pārsūtīšanu, ir vai nu nepareizi adresēts, vai to aizēno cits ieraksts, kas pretendē uz to pašu prefiksu. Liekiet prefiksu tieši vienam partnerim un dodiet katrai ierīcei savu atslēgu pāri.

OpenVPN ir baseins, un biežākā sadursme ir kopīgs klienta profils ar fiksētu --ifconfig rindu, kas nokopēta uz otru mašīnu. Tad abi klienti pieprasa to pašu tuneļa adresi, un serveris pieņem to sesiju, kuru apstrādā pirmo. Baseina izsīkums ar --duplicate-cn dod līdzīgu iznākumu, kad vairākas viena sertifikāta sesijas sacenšas par vienu ierakstu.

Šim nolūkam lasiet servera žurnālu, nevis klienta žurnālu. Serveris zina, kura sesija paņēma kuru adresi, un atkārtotās adreses tur ir redzamas kā brīdinājumi, kas nekad nesasniedz klientu.

Labojiet avotā, pēc tam vēlreiz pārbaudiet abas ierīces

Secība ir svarīga. Vispirms izlabojiet LAN dublikātu, jo klients, kas nevar noturēt adresi, nevar noturēt arī tuneli. Pēc tam izlabojiet nodrošināšanu VPN pusē, jo klienta puses labojums baseina piešķīrumā tiek atcelts nākamajā savienojumā. Visbeidzot, risiniet dubultotās identitātes: atsevišķi atslēgu pāri WireGuard, atsevišķi sertifikāti vai vismaz atsevišķi profili OpenVPN.

Klientā mehāniskā daļa ir īsa. Atbrīvojiet un atjaunojiet DHCP nomu, vai lūdziet mainīt adresi serverī rezervācijai. Neierakstiet nejaušu adresi, kas izskatās brīva.

sudo dhclient -r eth0 && sudo dhclient eth0
ipconfig /release && ipconfig /renew

Pēc tam pārbaudiet no abiem galiem, nevis no viena. Apstipriniet vārteju, tad pakalpojumu, kas jums patiešām nepieciešams, tad pieslēdzieties vēlreiz un atkārtojiet. Ja bija iesaistītas divas ierīces, pārbaudiet abas: vienas adreses pārvietošana atstāj otru ar novecojušiem kaimiņu ierakstiem vai vecu nomu, kas vēlāk parādās no jauna.

Ko ceļā nevajadzētu darīt

Neapklusiniet simptomu. Dublētu adrešu noteikšana ir tas, kas neļauj jums paņemt jau izmantotu adresi, un tās izslēgšana pārvērš redzamu konfliktu periodiskā pakešu zudumā, ko izsekot ir daudz grūtāk. Tas pats attiecas uz sertifikāta brīdinājuma pieņemšanu no negaidīta saimnieka: tā nemaz nav adreses problēma, un tā pārklikšķēšana paslēpj citu defektu.

Nemainiet arī pārvaldīta tīkla adresāciju paši. Pierakstiet sākotnējo iestatījumu, pajautājiet īpašniekam, kad adrese tiek piešķirta centralizēti, un turiet izmaiņu pietiekami mazu, lai to varētu atsaukt. RFC 5227 adrešu konfliktu noteikšanas noteikumi izskaidro, ko pierāda pareiza zonde, ko ir vērts zināt pirms konflikta nosaukšanas par īstu.

Saistītie raksti