Naredba stiže do 10.8.0.5 unutar VPN imenskog prostora bez ikakve žalbe, a ista naredba pada u trenutku kada upotrijebi ime hosta. Imenski prostor ima vlastite interfejse, rute i sockete; nema vlastitu datoteku razrješivača. Ako nešto ne stavi takvu datoteku tamo, proces unutra čita /etc/resolv.conf hosta i pita server koji možda nije dostupan iz tog mrežnog steka.

To je problem odabira datoteke, a ne problem usmjeravanja, i upravo zato numeričko odredište još funkcioniše.

Provjerite pogled razrješivača koji proces zaista dobija

Ne pretpostavljajte da je ljuska koju ste koristili jednaka procesu koji otklanjate greške. Grafička aplikacija, systemd jedinica i kontejner mogu svaki ući u drugačiji kontekst montiranja ili mreže. Pokrenite pretragu kroz istu putanju pokretanja i ispišite datoteku razrješivača iz nje.

Za imenski prostor napravljen pomoću ip netns add, provjera samo za čitanje je kratka:

ip netns exec vpn cat /etc/resolv.conf

Zabilježite da li rezultat navodi dostupnu adresu, loopback stub ili simboličku vezu koja pokazuje na mjesto s drugačijom dostupnošću.

Šta exec pomoćnik zapravo montira

Alat ip-netns dokumentuje konfiguraciju po imenskom prostoru pod /etc/netns/NAME/. Kada pokrene proces, pomoćnik stvara imenski prostor za montiranje i montira te datoteke preko njihovih uobičajenih putanja, pa proces vidi kopiju specifičnu za imenski prostor. To je pogodnost ovog konkretnog pokretača. Ulazak u mrežni imenski prostor drugim putem, poput unshare ili kontejnerskog runtimea, ne reprodukuje to automatski.

Loopback razrješivač je ovdje zamka: 127.0.0.53 znači vlastiti loopback imenskog prostora, a ne stub hosta. Stub koji sluša samo u imenskom prostoru hosta ne postaje usluga u novom.

Odaberite razrješivač do kojeg imenski prostor može doći

Koji god server datoteka navede, još mu treba ruta iz tog imenskog prostora. Javni razrješivač može odgovarati na javna imena i ipak padati za internu zonu, jer je privatna usluga dostupna samo kroz tunel. Provjerite rutu istovremeno s adresom, a ne nakon što je pretraga već pala.

Aplikacije s vlastitim razrješivačem, poput one koja koristi DNS over HTTPS, mogu potpuno zanemariti datoteku. Ako alat ima vlastito DNS podešavanje, promjena resolv.conf neće na njega uticati, a imenski prostor nikada nije bio problem.

Upišite datoteku na pravo mjesto

Napravite datoteku za imenski prostor pod /etc/netns/NAME/resolv.conf i pustite pokretač da je predstavi. Držite je minimalnom: jedan ili dva dostupna servera i domene pretrage koje zadatak treba. Ne uređujte generisanu datoteku razrješivača hosta da biste popravili pogled namijenjen jednoj grupi procesa, jer to mijenja svaku aplikaciju na mašini. Ako host koristi menadžer razrješivača, konfigurirajte putanju imenskog prostora kroz taj menadžer umjesto da se borite s njim.

Zabilježite sadržaj datoteke u runbook. Inače će sljedeća osoba testirati razrješivač hosta, vidjeti odgovor koji radi i zaključiti da je imenski prostor u redu.

Ponovo testirajte cijelu putanju

Testirajte unutar imenskog prostora s numeričkom adresom, internim imenom i javnim imenom. Taj slijed odvaja dostupnost od razrješavanja i odvaja interne zone od javnih. Zatim ponovo napravite imenski prostor i ponovite, jer datoteka koja postoji samo u pokrenutoj instanci nestaje s njom.

Potvrdite da datoteku prima proces, a ne ljuska. Pretraga koja radi iz interaktivne ljuske i pada iz servisa nalaz je o kontekstu montiranja i vrijedi ga zapisati prije sljedećeg incidenta umjesto da ga ponovo otkrivate od nule.

Povezani članci