clientaddr ay isa sa mga pagpipilian sa mount na kinokopya sa command line matagal pagkatapos mawala ang dahilan nito. Sinasabi nito sa isang NFSv4.0 server kung saan tatawagin pabalik ang client. Hindi ito pumipili ng server, hindi nagbibigkis ng bawat kahilingan sa isang source address, at hindi nagtutulak ng trapiko papasok sa isang tunnel. Sa isang laptop na may maraming address, kailangan ng tatlong tanong upang magpasya kung ito ay naaangkop sa lahat.

Tatlong kondisyon ang nagpapasya kung mahalaga ang pagpipilian

Ang una ay ang napagkasunduang minor na bersyon, dahil magkaiba ang pagtrato ng 4.1 at 4.2 sa mga callback. Ang ikalawa ay kung maaabot ng server ang address na iaanunsyo mo; kadalasang pinapayagan ito ng naka-rutang tunnel at kadalasang hindi pinapayagan ng isinalin na daan. Ang ikatlo ay kung ang pagkabigong hinahabol mo ay pagkabigo ng callback talaga.

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

Ang pagsagot sa mga ito nang mali ang pagkakasunod-sunod ang paraan ng mga tao para magdagdag ng callback address sa isang 4.2 mount at magpasya na sira ang pagpipilian.

Basahin muna ang minor na bersyon

nfsstat -m

Para sa umiiral na mount, ipinapakita nito ang impormasyon at mga flag ng mount, kasama ang epektibong bersyon bilang vers=4.0, vers=4.1 o vers=4.2. Ang tala na “NFSv4” lamang ang sinasabi ay lumalaktaw sa nag-iisang detalye na nagpapasya kung may kaugnayan ang pagpipiliang ito. Basahin ang numero, hindi ang salita.

Kung ang string ng bersyon ay galing sa default ng server at hindi sa iyong command line, itanong kung aling minor na bersyon ang napagkasunduan. Maaaring tanggihan ng server ang mas mataas na minor na bersyon at bumagsak pabalik, at ang pagbagsak na iyon ang eksaktong kaso kung saan biglang mahalaga ang isang callback. Maaaring hindi inilalarawan ng mount line na isinulat mo ang mount na mayroon ka.

Para sa 4.0, iaanunsyo ang address na maaabot ng server

Maaaring kailanganin ng isang NFSv4.0 server ang hiwalay na koneksyon pabalik sa client, halimbawa kapag binawi nito ang isang delegasyon. Sa maraming interface o kakaibang routing table, maaaring pumili ang awtomatikong pagtuklas ng callback address ng isang hindi magagamit ng server.

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

Ang address bago ang tutuldok ay ang server at nananatiling destinasyon. Ang callback address ay pag-aari ng client, at dapat itong maabot mula sa panig ng server ng tunnel. Ang loopback address ay ibinabalik ang server sa sarili nito. Ang pribadong address ng client na walang ruta ng pagbabalik ay kasing walang gamit, kahit mukhang tama ito sa client.

Gamitin ito bilang halimbawa, hindi bilang dahilan upang ibaba ang isang gumaganang mount. Palitan ang mga address at ang export path, at panatilihin ang authentication at iba pang pagpipilian na kailangan ng server. Ang pag-alis sa mga iyon upang magkasya ang isang halimbawa ay ibang pagbabago na may ibang resulta, at sa isang server na nagpapatupad ng uri ng seguridad, nabibigo ito bago pa man subukan ang anumang callback.

Hindi ginagamit ng 4.1 at 4.2 ang pagpipilian

Dinadala ng Linux NFSv4.1 at 4.2 ang mga callback sa mga koneksyong itinatag ng client, at tinatawag ng 4.1 ang pasilidad na iyon na backchannel. Hindi sila umaasa sa pagbubukas ng server ng bagong koneksyon sa isang inanunsyong address, kaya hindi inaayos ng clientaddr ang daan ng callback ng 4.1 o 4.2.

Hindi ibig sabihin nito na walang problema sa callback ang 4.1 at 4.2. Ibig sabihin, iba ang diagnosis: suriin ang itinatag na sesyon at ang estado ng backchannel nito sa halip na maghanap ng papasok na callback port na hindi dapat umiral. Ang nawawalang papasok na panuntunan ay ang inaasahang estado, hindi depektong dapat itama.

Ihiwalay ang pagkabigo sa mount sa pagkabigo sa callback

Itatag muna kung naaabot ng client ang serbisyo ng NFS at kung tinatanggap ng server ang export at ang kahilingan sa authentication. Ang timeout bago ang pagpapalitang iyon ay walang sinasabi tungkol sa callback address. Ang pagbabago ng isa habang nabibigo pa rin ang mount ay hindi nagpapalapit sa pagsisiyasat, at itinatago nito ang orihinal na error sa likod ng bagong pagpipilian sa mount.

Kapag ang ebidensya ay nagpakita ng nabigong 4.0 callback, doon lamang mahalaga ang inanunsyong address, kasama ang daan ng pagbabalik ng server, ang listener sa panig ng client at anumang pagsasala sa pagitan nila. Ang pagbabago ng numero sa pagpipilian sa mount ay hindi makalilikha ng mga daang iyon; makapagtuturo lamang ito sa isang umiiral na. Isulat kung alin sa apat na iyon ang na-verify mo, dahil darating ang susunod na ulat na wala ni isa sa kanila.

Ang NFS root sa maagang boot ay hiwalay na kapaligiran na may sariling mga paunang kailangan: kailangan ng initramfs ang mga tool at ang network bago mangyari ang mount. Ang mount na gumagana pagkatapos ng pag-login ay walang pinapatunayan tungkol sa pagkakasunod-sunod na iyon, at bihirang banggitin ng pagkabigo sa boot ang initramfs o ang network.

Kaugnay na mga artikulo