Бұл есептердің әрқайсысы бірдей естіледі және басқа мағынаны білдіреді: ноутбук мекенжай қақтығысына шағымданады, бірақ тек кейде, және көбінесе VPN қосулы кезде. Осы хабарламаны үш түрлі ақау шығарады: өз сілтемеңіздегі нақты көшірме, қашықтағы желі сіздің LAN диапазонын пайдаланатын және ештеңе қайталанбайтын қабаттасу, және бір мекенжайды екі серіктеске берген туннель. Түзету әр жағдайда бөлек, ал қатесі симптомды жоюдың орнына орнын ауыстырады. Сондықтан бірдеңені өңдеуден бұрын қандай жағдай екенін анықтаңыз.

Бір қате хабарламасы бар үш ақау

Көшірме дегеніміз бір сегменттегі екі машина бір мекенжайды талап етеді. Ядро мұны байқайды, өйткені өз зондына жауап басқа MAC-тен келеді, ал әрі қарай не болатыны стекке байланысты: Linux оны журналға жазады, Windows интерфейсті өшіріп, жүйелік журналға жазба қосады, ал DHCP клиенті ұсынысты қабылдамауы мүмкін.

Қабаттасу ешбір мекенжайды қайталамайды. Сіздің LAN 192.168.1.0/24, кеңсе желісі де 192.168.1.0/24, енді кеңсеге баратын маршрут принтеріңіз бен NAS-ыңыз да болатын мекенжайларға сілтейді. ARP мағынасында ештеңе қақтығыста емес; пакет екі желінің бірінде дұрыс емес құрылғыға кетеді.

Пулдағы соқтығыс — туннельдің өз қатесі. Екі серіктес бір туннель мекенжайымен конфигурацияланған немесе оны алған, сондықтан сервер қайтарылатын трафикті жібергенде оларды ажырата алмайды. Екі клиенттің бірі жұмыс істейтін қол алысуды көріп, деректерді көрмейді, бұл маршруттау мәселесіне ұқсайды және олай емес.

1-тексеріс: көшірме өз сегментіңізде ме?

Машинаңыздың шын мәнінде не барын тізімдеуден бастаңыз, конфигурациялағаныңызды есте сақтағаныңызды емес. VPN адаптерінің мекенжайы туннель үшін жеке және веб-сайттар көретін мекенжайға тең емес, сондықтан ортақ жария шығу қақтығыс емес.

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

Windows-та сол ақпарат ipconfig /all және Get-NetIPAddress арқылы келеді, көршілер кэші arp -a ішінде. Егер даулы мекенжай физикалық адаптерде болса және шағым VPN жұмыс істемей тұрып пайда болса, VPN — бақылаушы, оны диагностикалауды доғарған жөн.

Көшірмені болжаудың орнына дәлелдеу үшін мекенжайды оған ие емес құрылғыдан тексеріңіз. arping -D зондты нөлдік бастау мекенжайымен жібереді, сондықтан күтпеген MAC-тен келген жауап басқа хосттың бұл мекенжайға әлдеқашан жауап беріп жатқанын дәлелдейді.

sudo arping -D -I eth0 -c 3 192.168.1.50

Содан кейін өзіңіз басқа мекенжай таңдаудың орнына желі әкімшісі арқылы иесін табыңыз. Тек біреудің жазбаларында өмір сүретін статикалық тағайындаулар, тұрақты мекенжайлы принтерлер және DHCP серверіндегі резервтеулер әдеттегі кінәлілер, ал өшірілген құрылғы өз жалдауын әлі де ұстайды.

2-тексеріс: екі желі қабаттаса ма?

Туннель беретін префиксті өз интерфейстеріңіздегі префикстермен салыстырыңыз. Егер қашықтағы диапазон LAN-ға тең болса немесе оны қамтыса, ақау — қабаттасу, ал белгісі: VPN-сіз қолжетімді хост жоғалады немесе өз принтеріңіз кеңсе мекенжайына жауап береді.

ip route get 192.168.1.10
ip -br addr show

Маршрутты іздеу ядро қай интерфейсті қолданатынын айтады, және сол жауап — бүкіл диагностика. Егер жергілікті принтеріңізге тиесілі мекенжай үшін туннель десе, қабаттасуыңыз бар және ешбір жалдауды жаңарту оны өзгертпейді.

Шығудың үш адал жолы бар, әдетте тек біреуі қолжетімді. Қашықтағы жақ қабаттасатын ішкі желі трафигін маскарадтай алады, сондықтан клиентіңіз тек сервердің туннель мекенжайын көреді. Туннель LAN-мен соқтығыспайтын тар қашықтағы префиксті тасымалдай алады. Немесе клиент саясат ережелерімен бастау мекенжайы бойынша маршруттай алады, бұл жұмыс істейді, бірақ нәзік және әріптеске беру қиын.

Кеңсе желісін қайта нөмірлеу сирек сіздің шешіміңіз. Соқтығыстан құтылу үшін өз LAN-ды қайта нөмірлеу принтерлер, камералар және статикалық хосттар іске қосылғанда көпшілік күткеннен үлкен өзгеріс.

3-тексеріс: туннель бір мекенжайды екі рет берді ме?

WireGuard-та мекенжай пулы жоқ. Әр серіктес өзінің ашық кілтімен және AllowedIPs ішіндегі префикстермен анықталады, сондықтан бір туннель мекенжайы екі серіктес жазбасына жазылса немесе бір кілт жұбы екі машинаға орнатылса, көшірме пайда болады.

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

Трафик санағыштары мұнда пайдалы баған: жақындағы қол алысуды көрсетіп, тасымалдауды көрсетпейтін серіктес не дұрыс мекенжайланбаған, не сол префиксті талап ететін басқа жазбаның көлеңкесінде. Префиксті дәл бір серіктеске қойыңыз және әр құрылғыға өз кілт жұбын беріңіз.

OpenVPN пулы бар, және жиі кездесетін соқтығыс — екінші машинаға көшірілген тұрақты --ifconfig жолы бар ортақ клиент профилі. Сонда екі клиент те бір туннель мекенжайын сұрайды, ал сервер бірінші өңдеген сессияны қабылдайды. --duplicate-cn көмегімен пулдың сарқылуы бір сертификаттың бірнеше сессиясы бір жазба үшін бәсекелескенде ұқсас нәтиже береді.

Бұл үшін клиент журналының орнына сервер журналын оқыңыз. Сервер қай сессияның қай мекенжайды алғанын біледі, ал ондағы қайталанатын мекенжайлар клиентке ешқашан жетпейтін ескертулер ретінде көрінеді.

Көзде түзетіп, кейін екі құрылғыны қайта тексеріңіз

Реттілік маңызды. Алдымен LAN көшірмесін түзетіңіз, өйткені мекенжайды ұстай алмайтын клиент туннельді де ұстай алмайды. Содан кейін VPN жағындағы қамтамасыз етуді түзетіңіз, өйткені пул тағайындауына клиент жағынан енгізілген өзгеріс келесі қосылуда жойылады. Соңында қайталанған жеке басымдықтармен айналысыңыз: WireGuard-та бөлек кілт жұптары, OpenVPN-де бөлек сертификаттар немесе кемінде бөлек профильдер.

Клиентте механикалық бөлік қысқа. DHCP жалдауын босатып, жаңартыңыз немесе резервтеу үшін мекенжайды серверде өзгертуді сұраңыз. Бос көрінетін кездейсоқ мекенжайды термеңіз.

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

Содан кейін бір жақтан емес, екі жақтан тексеріңіз. Шлюзді, кейін шын мәнінде қажет қызметті растаңыз, содан кейін қайта қосылып, қайталаңыз. Екі құрылғы қатысса, екеуін де тексеріңіз: бір мекенжайды жылжыту екіншісінде ескірген көрші жазбаларын немесе кейінірек қайта пайда болатын ескі жалдауды қалдырады.

Жолда не істемеу керек

Симптомды үнсіз етпеңіз. Қайталанатын мекенжайларды анықтау пайдаланылып жатқан мекенжайды алуға жол бермейтін нәрсе, ал оны өшіру көрінетін қақтығысты бақылауға әлдеқайда қиын үзілісті пакет жоғалтуына айналдырады. Күтпеген хосттан келген сертификат ескертуін қабылдауға да сол қатысты: бұл мүлде мекенжай мәселесі емес, оны асып кету басқа ақауды жасырады.

Басқарылатын желінің мекенжайлауын да өзіңіз өзгертпеңіз. Бастапқы параметрді жазып алыңыз, мекенжай орталықтандырылып берілсе, иесінен сұраңыз, және өзгерісті кері қайтаруға болатындай шағын ұстаңыз. RFC 5227 мекенжай қақтығысын анықтау ережелері дұрыс зондтың нені дәлелдейтінін түсіндіреді, мұны қақтығысты шынайы деп атамас бұрын білген жөн.

Қатысты мақалалар