clientaddr je ena tistih možnosti priklapljanja, ki se v ukazno vrstico kopirajo še dolgo po tem, ko je razlog zanjo izginil. Pove strežniku NFSv4.0, kam naj pokliče odjemalca nazaj. Ne izbere strežnika, ne veže vsake zahteve na izvorni naslov in ne potiska prometa v tunel. Na prenosniku z več naslovi so za odločitev, ali sploh velja, potrebna tri vprašanja.

Trije pogoji odločajo, ali je možnost pomembna

Prva je dogovorjena manjša različica, ker 4.1 in 4.2 povratne klice obravnavata drugače. Druga je, ali lahko strežnik doseže naslov, ki bi ga oglaševali; usmerjen tunel to običajno dovoli, prevedena pot pa običajno ne. Tretja je, ali je napaka, ki ji sledite, sploh napaka povratnega klica.

ConditionIf yesIf no
Version is 4.0The option can matterSkip it; inspect the session instead
Server can reach the addressAdvertise itFix reachability first
Failure is a callbackDiagnose callback pathLook at mount and export

Odgovarjanje nanje v napačnem vrstnem redu je način, kako ljudje dodajo naslov povratnega klica priklapljanju 4.2 in sklenejo, da je možnost pokvarjena.

Najprej preberite manjšo različico

nfsstat -m

Za obstoječe priklapljanje to izpiše podatke o priklapljanju in zastavice, vključno z dejansko različico kot vers=4.0, vers=4.1 ali vers=4.2. Zapis, ki pravi samo “NFSv4”, izpusti edino podrobnost, ki odloča, ali je ta možnost pomembna. Berite številko, ne besede.

Če niz različice prihaja iz privzete nastavitve strežnika in ne iz vaše ukazne vrstice, vprašajte, katera manjša različica je bila dogovorjena. Strežnik lahko zavrne višjo manjšo različico in se vrne nižje, in prav ta vrnitev je primer, ko povratni klic nenadoma šteje. Vrstica priklapljanja, ki ste jo napisali, morda ne opisuje priklapljanja, ki ga imate.

Za 4.0 oglašujte naslov, ki ga strežnik lahko doseže

Strežnik NFSv4.0 lahko potrebuje ločeno povezavo nazaj do odjemalca, na primer ko prekliče delegacijo. Pri več vmesnikih ali nenavadni usmerjevalni tabeli lahko samodejno odkrivanje naslova povratnega klica izbere takega, ki ga strežnik ne more uporabiti.

mount -t nfs -o vers=4.0,clientaddr=10.8.0.6 10.8.0.1:/export /mnt/share

Naslov pred dvopičjem je strežnik in ostane cilj. Naslov povratnega klica pripada odjemalcu in mora biti dosegljiv s strežnikove strani tunela. Naslov povratne zanke usmeri strežnik nazaj nase. Zasebni naslov odjemalca brez povratne poti je prav tako neuporaben, čeprav je na odjemalcu videti pravilen.

Uporabite to kot ponazoritev, ne kot razlog za znižanje delujočega priklapljanja. Zamenjajte naslove in pot izvoza ter obdržite overjanje in druge možnosti, ki jih zahteva strežnik. Če jih izpustite, da bi se en primer ujemal, je to druga sprememba z drugačnim rezultatom, na strežniku, ki zahteva varnostni tip, pa spodleti še preden se poskusi kakršen koli povratni klic.

4.1 in 4.2 te možnosti ne uporabljata

Linux NFSv4.1 in 4.2 prenašata povratne klice po povezavah, ki jih je vzpostavil odjemalec, in 4.1 to sredstvo imenuje backchannel. Nista odvisna od tega, ali strežnik odpre novo povezavo do oglaševanega naslova, zato clientaddr ne popravi poti povratnega klica 4.1 ali 4.2.

To ne pomeni, da 4.1 in 4.2 nimata težav s povratnimi klici. Pomeni, da je diagnoza drugačna: preglejte vzpostavljeno sejo in stanje njenega backchannela, namesto da bi iskali dohodna vrata povratnega klica, ki ne bi smela nikoli obstajati. Manjkajoče dohodno pravilo je pričakovano stanje, ne napaka, ki jo je treba popraviti.

Ločite napako priklapljanja od napake povratnega klica

Najprej ugotovite, ali odjemalec doseže storitev NFS in ali strežnik sprejme izvoz in zahtevo za overjanje. Časovna omejitev pred to izmenjavo ne pove ničesar o naslovu povratnega klica. Spreminjanje enega, medtem ko priklapljanje še vedno spodleti, preiskave ne približa in izvirno napako skrije za novo možnostjo priklapljanja.

Šele ko dokazi pokažejo neuspešen povratni klic 4.0, je oglaševani naslov pomemben, skupaj s povratno potjo strežnika, poslušalcem na strani odjemalca in morebitnim filtriranjem med njima. Spreminjanje številke v možnosti priklapljanja ne more ustvariti teh poti; lahko le pokaže na pot, ki že obstaja. Zapišite, katero od teh štirih ste preverili, ker bo naslednje poročilo prispelo brez katere koli od njih.

Koren NFS pri zgodnjem zagonu je ločeno okolje z lastnimi predpogoji: initramfs potrebuje orodja in omrežje, preden se priklapljanje lahko zgodi. Priklapljanje, ki deluje po prijavi, o tem zaporedju ne dokaže ničesar, in napaka pri zagonu le redko omeni initramfs ali omrežje.

Sorodni članki