Откако тунелот е подигнат, последниот чекор обично е име што работи наместо адреса што ја ставате во обележувач. dnsmasq запис за хост плус адреса на resolver до која клиентот може да стигне го прават тоа со две датотеки и без multicast. Одлуката што навистина бара размислување е потесна: дали клиентот го испраќа целиот DNS преку домашниот resolver, или само имињата под home.arpa? Сѐ подолу претпоставува одобрено поставување на WireGuard со Linux клиент и лабораториски resolver што домашниот администратор веќе го управува.

Три начина да му дадете resolver на клиентот

ApproachScopeCost
DNS = in the wg-quick interfacethe client's general DNS while the tunnel is upevery name in the house now depends on the tunnel
Platform split-DNS for home.arpaonly that suffixmore configuration per client platform
Manual dig @resolverone query at a timefine for testing, useless for applications

За преносно сметач што повремено се приклучува на тунелот, split-DNS е подобрата стандардна поставка: ги задржува обичните интернет имиња на resolver-от на кој машината веќе му верува. За машина што постои за да стигне до домашните услуги, туркањето на resolver-от е поедноставно, а цената на опфатот не е важна.

Објавете го записот кај resolver-от што ја поседува зоната

Одвојте ги улогите пред да пишувате конфигурација: адресата на VPN клиентот, resolver-от и услугата се три различни хоста со три различни задачи. Во оваа лабораторија тие се 10.77.0.2 за клиентот, 192.168.50.53 за dnsmasq и 192.168.50.20 за NAS, а тунелот го насочува домашниот LAN.

listen-address=127.0.0.1,192.168.50.53
bind-interfaces
local=/home.arpa/
host-record=nas.home.arpa,192.168.50.20

Линијата host-record ја дава адресата, а линијата local= ги задржува непознатите прашања за home.arpa внатре во овој resolver наместо да ги препраќа нагоре. Прво прочитајте ја постоечката конфигурација и усогласете сѐ што веќе дефинира сервер, интерфејс или истиот локален домен; ставање фрагмент врз конфликтен дава resolver што весело се вчитува и одговара погрешно. Прирачникот на dnsmasq ги дефинира двете директиви и контролите за слушање.

Потоа проверете ја услугата што работи, а не датотеката. Тест на конфигурацијата плус рестарт е минимумот, а ефективниот одговор е тоа што го враќа барањето.

Насочете го resolver-от, не само веб-страницата

AllowedIPs на WireGuard одлучува кои одредишта влегуваат во тунелот. Ако адресата на resolver-от падне надвор од него, барањето излегува по нормалниот пат и никогаш не стигнува до dnsmasq, иако самиот NAS е достапен. Вклучете ја адресата на resolver-от, или LAN префиксот што ја содржи, и проверете ја политиката за препраќање на портата од другата страна.

Дозволете UDP и TCP на порта 53 од овластениот опсег на тунелот, со повратен пат до адресата на тунелот на клиентот. Не препраќајте порта 53 од WAN за да го олесните тестирањето: отворен рекурзивен resolver на домашна врска се наоѓа во рок од часови. Врзувањето за интерфејс само по себе не е политика за пристап.

Проверете го одговорот пред апликацијата

Прашајте прво resolver-от директно, потоа системот, потоа апликацијата. Секој чекор изолира една алка во синџирот, а разликата меѓу нив е дијагнозата.

dig @192.168.50.53 nas.home.arpa. A
dig +tcp @192.168.50.53 nas.home.arpa. A
getent ahostsv4 nas.home.arpa
curl -sS --max-time 5 http://nas.home.arpa/ -o /dev/null -w '%{http_code}\n'

Вреди да се изврши TCP барањето, бидејќи скратениот UDP одговор принудува повторен обид, а политиката што отфрла TCP 53 создава дефекти што изгледаат повремено. Чекорот getent покажува што всушност прави конфигурацијата на resolver-от на машината, што не е секогаш тоа што сте го испратиле.

Одлучете што се случува кога тунелот е исклучен

Ако општиот DNS на клиентот покажува на 192.168.50.53, секое разрешување на имиња престанува да работи кога тунелот не е подигнат. Тоа е прифатливо на машина што е корисна само со тунелот, а неприфатливо на преносно сметач што користи и Wi-Fi во кафуле. Split-DNS целосно го избегнува прашањето, зашто само пребарувањата на home.arpa зависат од домашниот resolver.

Запомнете што е името: home.arpa е резервирано за станбени мрежи и не е глобално единствено, па друга мрежа може легитимно да го користи истото име. Тоа е сѐ уште локална погодност, а не доверлив идентификатор. Одржувајте го записот актуелен кога услугата се сели, и отстранете ја политиката на resolver-от кога лабораторијата се повлекува, наместо да оставите преносно сметач што покажува на адреса до која може да стигне само преку тунел што повеќе не постои.

Поврзани статии