Inihahatid ng laptop ang pahina sa localhost, sumasali ang telepono sa parehong VPN, at iniuulat ng browser sa telepono na hindi maabot ang site. Wala pang mali sa tunnel, dahil naghahatid lamang ng packet ang tunnel. Ang development server na nakatali sa loopback interface ay hindi kailanman tumatanggap ng koneksyong nakadirekta sa ibang bagay, kaya ang unang dapat tingnan ay ang socket na nakikinig at hindi ang VPN.

Daanan ang socket, ang bind setting, ang panuntunan ng firewall at ang URL, sa ganoong pagkakasunod-sunod.

Sumasagot ang socket sa mas makitid na tanong

Ang listener na ginawa sa 127.0.0.1 ay tumatanggap ng trapik mula sa makina mismo at tinatanggihan ang lahat ng dumarating sa ibang address. Ang listener sa wildcard address ay tumatanggap sa bawat lokal na interface, kasama ang interface ng VPN, na mas malawak kaysa kailangan ng karamihan ng development setup. Ang listener na nakatali sa isang partikular na address ng VPN ang pinakamakitid na kapaki-pakinabang na opsyon, at gumagana lamang ito habang umiiral ang address na iyon.

Dalawang bitag sa pagpapangalan ang sumusunod mula roon. Sa browser ng telepono, ang localhost ay nangangahulugang ang telepono, hindi ang laptop. Ang wildcard address ay isang halaga ng bind at hindi isang bagay na itinatype sa URL. Sinumang sumubok sa alinman sa dalawa ay mag-uulat ng pagkabigo na hindi kailanman kinasangkutan ng network.

Nagdadagdag ang IPv6 ng ikatlong kaso, dahil ang socket ay maaaring tumanggap ng IPv4 at IPv6 depende sa mga opsyon na madaling makalimutan. Basahin ang pamilya ng address sa listahan. Ang wildcard entry para sa isang pamilya ay hindi naglalarawan sa isa pa.

Basahin ang address ng pakikinig

Suriin ang socket bago baguhin ang configuration. Ang lokal na address, port at prosesong may-ari nang magkasama ay tumutukoy kung naaabot ba ang server mula sa VPN.

Get-NetTCPConnection -State Listen -LocalPort 8080 | Select-Object LocalAddress,LocalPort,OwningProcess
Get-Process -Id (Get-NetTCPConnection -State Listen -LocalPort 8080).OwningProcess
ipconfig | Select-String -Pattern 'IPv4'
Get-NetFirewallRule -DisplayName '*8080*' | Format-Table DisplayName,Enabled,Profile,Direction,Action

Ang lokal na address na 127.0.0.1 ay nagtatapos sa tanong: walang pagbabago sa firewall ang makakatulong, dahil hindi nakikinig ang aplikasyon sa interface ng VPN. Ang wildcard o ang address ng VPN ay nangangahulugang maayos ang socket at nalalapat ang susunod na hangganan.

Kumpirmahin din ang prosesong may-ari, dahil ang walang kaugnayang serbisyo sa karaniwang port ay maaaring gawing tama ang hitsura ng talahanayan habang ang inilaan na server ay hindi kailanman nagsimula. Itugma ang landas ng executable, hindi lamang ang pangalan. Ang lumang proseso mula sa naunang pagtakbo ay madalas na impostor.

Baguhin ang bind sa pamamagitan ng aplikasyon

Gamitin ang dokumentadong listen-address na opsyon ng framework at i-restart ang proseso. Kung pagmamay-ari ng laptop ang pribadong address na 10.77.0.1, ang URL ng telepono ay magiging http://10.77.0.1:8080/ at ang address na iyon ay dapat iruta sa VPN; wala nang iba sa setup ang magbabago.

Huwag magdagdag ng arbitraryong address sa Windows o baguhin ang gateway para pilitin ang bind. Ang mga pagbabagong iyon ay tumatagal lampas sa debugging session at nagugulat sa susunod na tao. Ang server na sinimulan bago umiiral ang address ng VPN ay maaari ding mabigong mag-bind, kaya mahalaga ang pagkakasunod-sunod ng pagsisimula para sa pansamantalang interface. Bigyan ito ng muling pagsubok o simulan ito pagkatapos ng tunnel. Ang pagkabigo ng bind sa boot ay eksaktong mukhang problema sa firewall sa susunod na umaga.

Para sa HTTPS, panatilihing buo ang hostname ng serbisyo at ang pagpapatunay ng sertipiko. Ang babala ng sertipiko sa hilaw na address ay problema sa pagpapangalan, hindi hakbang na lalaktawan sa pag-click, at dapat tumugma ang pribadong DNS sa listener na pinili mo.

Magbukas ng isang panuntunan, hindi ang buong network

Kapag tumanggap na ang socket sa address ng VPN, ang firewall ang magpapasya kung darating ang kahilingan. Ilimitahan ang panuntunan sa aplikasyong ito, protokol na ito, lokal na port na ito at awtorisadong malayong pinagmulan, at kumpirmahin kung aling profile ang aktibo sa adapter ng VPN.

Gamitin ang source address na aktuwal na nakikita ng Windows, kasama ang anumang pagsasalin na ginagawa ng gateway, dahil ang panuntunang isinulat para sa orihinal na address ng kliyente ay hindi tutugma sa isinalin.

Ang pahinang naglo-load at nagpapakita ng error ng aplikasyon ay pag-unlad: ang pagtanggi ng HTTP ay ibang pagkabigo kaysa sa walang koneksyon sa TCP, at ang susunod na imbestigasyon ay para sa sariling patakaran sa pag-access ng aplikasyon at hindi sa network.

Tapusin sa pamamagitan ng paghingi ng pahina mula sa inilaang telepono at pagkumpirma na ang ibinukod na device ay hindi pa rin ito maabot. Ang gumaganang listener na may panuntunang tumatanggap ng lahat ay hindi parehong resulta.

Kaugnay na mga artikulo