Ó so pọ̀, àmì tray jẹ́ aláwọ̀ ewé, àti ojú-ìwé tí ń fi àdírẹ́sì hàn ṣì ń fi àdírẹ́sì olùpèsè hàn — ìyẹn kò túmọ̀ sí àìdá lẹ́sẹ̀kẹsẹ̀. Ẹrọ ìbánisọ̀rọ̀ ṣe iṣẹ́ méjì ọ̀tọ̀ọ̀tọ̀: ó kọ́ tunnel, ó sì ṣàtúnṣe tábìlì ipa. Èyí kan lè wà láìsí èkejì, àti yíyàn ipa ni ètò tí a mọ̀ọ́mọ̀ fi ń fò èkejì.

Ohun tí ẹrọ ìbánisọ̀rọ̀ gbé wọlé ní tòótọ́

Bèèrè irú ojú-ìpàdé wo ni yóò gbé pákẹ́ẹ̀tì lọ sí ibi àfojúsùn gidi dípò bíbèèrè bóyá tunnel wà. Tunnel tí kò ní ipa sí ibi àfojúsùn yẹn jẹ́ ọ̀nà àdáni tí kò sí ẹnìkankan tí ń gbà.

ip route get 9.9.9.9
Find-NetRoute -RemoteIPAddress 9.9.9.9
route print -4

Àṣẹ àkọ́kọ́ ń dáhùn lórí Linux àti macOS, àwọn méjì tó kù jẹ́ ìbámu fún Windows níbi tí ọ̀kan ti tó. Bí ìdáhùn bá dárúkọ adapter ti ara, tunnel wà àti ipa àìdí kò yí padà rárá. Tún àyẹ̀wò ṣe fún ibi àfojúsùn tí ó yẹ kí ó lo tunnel, nítorí àyẹ̀wò méjì, ọ̀kan jíjìnnà àti ọ̀kan láàárín, sọ ètò wo ni a fi sínú iṣẹ́.

Irú ọ̀nà mẹ́ta ti yíyàn ipa

Ètò tunnel kíkún sábà ń kọ ipa àìdí tí ó tọ́ka sí ojú-ìpàdé, tàbí ó ń kọ bọ́ọ̀lù àwọn ìpilẹ̀ ààlà ìdajì tí wọ́n ń ṣẹ́gun lórí gígùn ìpilẹ̀ nígbà tí ipa àìdí ìpilẹ̀ ṣì wà nínú tábìlì. Yíyàn ipa ni yíyàn mìíràn, ó sì ń wá ní ọ̀nà púpọ̀. Ètò kan ń tọ́ ipa sí ẹrọ kan bíi server RDP, òmíràn ń tọ́ ipa sí ààlà gbogbo eniyan tí a gbọ́dọ̀ dé láti ibi pàtó, ẹ̀kẹta sì mọ̀ọ́mọ̀ yọ àpùlẹ̀ kan kúrò. Àwọn mẹ́tẹ̀ẹ̀ta jẹ́ ẹ̀tọ́, kò sì sí ọ̀kan tí ó yí àdírẹ́sì tí ojú-ìwé gbogbogbò ń rí padà.

grep -nE "redirect-gateway|route-nopull|route " /etc/openvpn/client/*.conf
ip route show table main | head -20

Ka ètò fún àṣẹ tí ń pinnu, lẹ́yìn náà ka tábìlì fún ohun tí ó bí. Àṣẹ tí a tì lẹ́yìn ni a tún lè dínà lórí ẹrọ ìbánisọ̀rọ̀, nítorí náà ètò àti tábìlì gbọ́dọ̀ bá ara wọn mu kí o tó dá server lẹ́bi.

Ẹ̀gbẹ́ òkè gbọ́dọ̀ kọ àdírẹ́sì orísun lẹ́ẹ̀kan sí i

Àìdá kejì wà tí ó ń hàn bíi kanna láti inú aṣàwákiri. Ipa náà wọ inú tunnel, server gba àwọn pákẹ́ẹ̀tì, lẹ́yìn náà ó ń gbé wọn lọ pẹ̀lú àdírẹ́sì àdáni ẹrọ ìbánisọ̀rọ̀ tí kò yí. Ìgbésẹ̀ tó kàn kò ní ọ̀nà ìpadà fún àdírẹ́sì yẹn, nítorí náà àwọn ìdáhùn ń pòórá àwọn ojú-ìwé sì ń dì. Server gbọ́dọ̀ gbé wọn lọ gan-an, ó sì gbọ́dọ̀ yí orísun padà sí ohun tí íńtánẹ́ẹ̀tì lè tọ́ ipa padà sí.

sysctl net.ipv4.ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -S | grep MASQUERADE

Dárúkọ ojú-ìpàdé tí ó fi ojú ko íńtánẹ́ẹ̀tì gan-an, tí kì í ṣe eth0 nígbà gbogbo ní ìpínlẹ̀ òde òní. Server tí a gbà pẹ̀lú àdírẹ́sì dúró ṣinṣin lè yí padà sí àdírẹ́sì yẹn ní tààrà dípò lílo masquerade. Àwọn ìlà méjì ló ṣe pàtàkì, nítorí gbígbé lọ láìsí ìyípadà ń jẹ́ kí orísun tí kò lè tọ́ ipa tú ká, nígbà tí ìyípadà láìsí gbígbé lọ kò rí pákẹ́ẹ̀tì rárá.

Ìyánjú orúkọ ń gba ọ̀nà tirẹ̀

Ìrìn-àjò lè jáde gba tunnel nígbà tí ìwádìí tí ó rí orúkọ náà lọ sí olùyánjú nínú nẹ́tíwọ́kì àdúgbò. Àdírẹ́sì tí a rí ń dúró bakan náà, àwọn ìbèèrè kò dúró, àti àlàfo yẹn gan-an ni ètò DNS pínpín ń yàn.

resolvectl status | head -20
resolvectl query example.org

Kíyèsí server wo ló dáhùn àti bóyá ó yàtọ̀ sí ìpìlẹ̀ ṣáájú tunnel. Nínú tunnel pínpín èyí sábà jẹ́ ètò tí àwọn ènìyàn fẹ́ yí padà nígbà tí wọ́n ń ráhùn nípa àdírẹ́sì, òun sì ni ohun tí wọn kò tíì wò rárá.

Àwọn àkíyèsí mẹ́rin tí ó parí ọ̀rọ̀

Ṣàkọsílẹ̀ àdírẹ́sì ìjáde nígbà tí tunnel ti dé, lẹ́yìn náà nígbà tí ó ti ṣí. Ṣe àyẹ̀wò ibi àfojúsùn ní àwọn ipò méjèèjì kí o sì ṣàkọsílẹ̀ ojú-ìpàdé ní gbogbo ìgbà.

curl -sS https://ifconfig.me/ip
ip route get 9.9.9.9

Nígbà tí àyẹ̀wò bá wọ inú tunnel tí ìrópadà sì ṣì ń fi àdírẹ́sì olùpèsè hàn, ìyípadà ní ìjáde kò sí. Nígbà tí àyẹ̀wò bá wọ orí adapter ti ara, ètò náà jẹ́ yíyàn àti àdírẹ́sì gbogbo eniyan kò sì wà nínú ààlà rárá. Pààrọ̀ iṣẹ́ ìrópadà pẹ̀lú èyí tí o gbẹ́kẹ̀ lé kí o sì ṣàkọsílẹ̀ àwọn àkíyèsí mẹ́rẹ̀ẹ̀rin papọ̀, nítorí ní ọ̀tọ̀ọ̀tọ̀ wọ́n jẹ́ ìtàn lásán. Papọ̀ wọ́n fi hàn iṣẹ́ wo nínú méjì ni ẹrọ ìbánisọ̀rọ̀ ṣe ní tòótọ́.

Àwọn àpilẹ̀kọ tó jọra