Mag-ping sa isang host sa pamamagitan ng VPN at ang kahilingan ay lumalabas sa isang uri ng ICMP at bumabalik sa iba, na sapat para malito ang anumang tuntuning nakasulat sa mga termino ng port. Walang port ng serbisyong patutunguhan sa palitan ng echo na makokopya sa tuntunin ng pagbabalik, at ang filter na umaasa ng simetrya ay itatapon ang tugon habang ang kahilingan ay dumadaan nang walang hadlang. Nagsisimula ang pagwawasto sa pagbasa ng packet kung ano talaga ito, at pagkatapos ay sa pagpapasya kung aling hangganan sa daan ang gumagawa ng desisyon. Karaniwang dalawang patong ang gumagana habang ang pangatlo ay tahimik na itinatapon ang tugon. Hinihiwalay sila ng mga seksyon sa ibaba sa pagkakasunod-sunod na nakikita ng isang packet.

Nagbabago ang packet ng uri, hindi ng port

Ang kahilingan ng echo ay ICMP uri 8, code 0, at may dalang identifier at sequence number. Ang tugon ay uri 0, code 0, na may parehong identifier at sequence, at ang mga dulo ng IP ay pinalitan. Tinutukoy ng RFC 792 ang mga field na iyon, at ang identifier ang nagpapahintulot sa nagpadala na itugma ang mga tugon sa sarili nitong mga kahilingan.

Ang wala ay kasinghalaga rin: walang TCP o UDP header, kaya walang port na papayagan. Ang tuntuning nagpapangalan ng port para sa tugon ng echo ay naglalarawan ng packet na hindi kailanman iiral. Ito ang pinakakaraniwang pagkakamali sa mga tiket ng ping sa VPN. Mukhang tiyak ang tuntunin, walang naaangkop, at iniiwan ang kabiguan kung saan ito naroon.

Tatlong konteksto ang nagpapasya sa packet

Kung ang ping ay patungo sa isang host sa malayong LAN, dapat ipasa ng gateway ang kahilingan. Kung patungo ito sa address na pag-aari ng gateway mismo, nagtatapos ito sa lokal na daan ng input. Kung ang gateway mismo ang nagpasimuno ng ping, nagsisimula ang packet sa sarili nitong daan ng output at hindi man lang dumaraan sa desisyon ng forwarding.

Ang tatlong kontekstong ito ay may magkaibang mga kadena ng tuntunin at magkaibang counter, at ang pakitungo sa kanila bilang isa ang dahilan kung bakit «pinapayagan ng firewall ang ICMP» ay maaari pa ring magbigay ng nabigong ping. Ang panlabas na tunnel ay ikaapat na konteksto: ang pagpapahintulot sa tagapakinig ng VPN ay hindi awtomatikong nagpapahintulot sa decapsulated na panloob na kahilingan, at ang panloob na pahintulot ay walang sinasabi tungkol sa kung ang panlabas na tunnel ay nakataas.

Iba ang paghawak ng stateful at stateless na filter sa tugon

Ang stateful na firewall na nakakita sa kahilingang lumabas ay maaaring iugnay ang tugon sa agos na iyon at tanggapin ito nang walang ikalawang tuntunin. Walang ganoong alaala ang stateless na filter, kaya kailangan ng direksyon ng pagbabalik ang sarili nitong tahasang pahintulot, na pinalitan ang pinagmulan at patutunguhan.

Tingnan kung aling modelo ang aktuwal na ipinatutupad ng produkto bago magsulat ng kahit ano. Ang tuntunin para sa kahilingan ng echo ay hindi laging sumasaklaw sa tugon ng echo, at ang produktong sumusubaybay sa mga query ng ICMP ay maaari pa ring maglapat ng ibang patakaran sa mga tugon na dumarating sa ibang interface.

Limitahan ang pinapayagan mo. Ang pagpapahintulot sa bawat tugon ng echo mula kahit saan ay hindi katulad ng pagkumpleto ng isang stateful na asosasyon, at hindi pinapatunayan ng numero ng uri ang nagpadala.

Binabago rin ng pagsasalin ang identifier

Kung ang pagsasalin ng pinagmulan ay sinasadya, hindi tumutugma ang tuple sa malayong dulo sa ipinadala ng kliyente. Maaaring isalin ng NAT ang identifier ng query ng ICMP kasama ng mga address, kaya ang pagpilit na lumitaw ang parehong numero sa magkabilang panig ay lumilikha ng huwad na pagkakaiba.

Sa halip, iugnay ang mapping na iniuulat ng tagasalin. Ang tagasaling nagsusulat muli ng identifier ay hindi pananatilihin ang numerong itinala ng iyong kliyente, kaya ituring ang mapping bilang pagkakakilanlan at hindi ang numero. Pagkatapos ay subaybayan ang isang makikilalang kahilingan sa buong daan: tiyakin na naaabot nito ang patutunguhan kasama ang inaasahang pinagmulan, tiyakin na naglabas ng tugon ang patutunguhan, subaybayan ang ruta ng tugon na iyon pabalik, at tiyakin na natanggap ito ng kliyente sa halip na panoorin lamang na tumataas ang counter ng gateway.

Huwag isama ang mga error ng ICMP sa patakaran ng echo

Ang mensaheng «kailangan ng fragmentation» na ginagamit ng pagtuklas ng MTU ng daan ay hindi tugon ng echo, at binabanggit ng payload nito ang packet na nagdulot nito. Ang pahintulot para sa echo lamang na tahimik na itinatapon ang mga error na iyon ay ginagawang nakabitin na koneksyon ang isang problema sa laki, na kabaligtaran ng nakakatulong.

Ang parehong pag-iingat ay naaangkop sa mga pamilya ng address. Gumagamit ang ICMPv6 ng ibang mga uri ng mensahe at nagdadala ng mahahalagang tungkulin na wala ang IPv4, kaya ang pagkopya ng mga numerong ito sa isang tuntunin ng IPv6 ay simpleng mali.

Kapag gumana ang palitan ng echo, subukan ang tunay na aplikasyon nang hiwalay. Ang matagumpay na ping ay nagpapatunay ng pagpunta at pagbabalik ng isang protocol sa isang laki patungo sa isang patutunguhan, at hindi ito lisensya para ipagpalagay na pinapayagan ang HTTPS, SMB o anumang iba pang agos.

Kaugnay na mga artikulo