Waxba socket-ka kuma xasuusto interface-ka soo qaaday codsiga, sidaas darteed wadada caadiga ah ee VPN tunnel buuxa waxay qabsan kartaa jawaab WAN u leh. Adeeggu ma iska indhatiro interface-ka soo galaya; Linux wuxuu jawaab maxalli ah u abuuray u maraariyaa bartilmaameedka iyo siyaasadda isha. Qaanuun isha ku salaysan ayaa beddelkiisa kaliya jawaabaha adeegga u mariyaa shaxda WAN buuxa, isagoo ka tagaya bixitaanka caadiga ah tunnel-ka. Dekeddu way furan tahay inta jawaabtu ka baxayso wadada khaldan, taasina waa sababta calaamaddu u muuqato hal-dhinac.

Fikradda khaldan: jawaabuhu waxay raacaan interface-ka ay ku soo gaareen

Waxay u muuqataa mid macquul ah in baakad ku timaadda eth0 ay ku baxdo eth0. Shaandhaynta baakadaha aan xaaladda lahayn sidaas ayaa loo qori karaa, tcpdump-ka dhinaca soo galayaana wuxuu codsiga ku tusaa meesha la filayo. Maraarinta sidaas kuma shaqayso taraafikada uu host-ka laftiisu abuuro.

Marka adeeggu xiriirka aqbalo, jawaabtiisu waa baakad cusub oo maxalli ah loo abuuray. Kernel-ku wuxuu eegaa qaanuunnada maraarinta bartilmaameedka iyo isha jawaabta, wadada caadiga ah ee VPN-na waa jawaab si buuxda u ansax ah. Waxba socket-ka kuma xasuusto interface-ka soo qaaday codsiga.

Sidaas darteed calaamaddu waxay u muuqataa hal-dhinac: codsiyadu way yimaadaan, jawaabuhuna way lunto. Sidaas darteed sidoo kale in qaanuun firewall ah lagu daro dekedda soo gelaya waxba ma beddelo. Baakadka lagama xannibo wadada soo gelaysa; waxaa loo maraariyaa meel kale wadada baxaysa. La soco jawaabta raadin isha lagu qeexay oo wareegga ayaa muuqan doonaa.

Waxa kernel-ku dhab ahaan maraariyo: cinwaanka isha

Gacanta aad u baahan tahay waa cinwaanka maxalliga ah ee adeeggu u isticmaalo jawaabaha. Host leh cinwaanka eth0 tusaale 192.0.2.10/24 iyo gateway 192.0.2.1, cinwaankaas wuxuu ku yaal interface-ka. VM daruuro ku yaal cinwaanka dadweynaha ayaa laga yaabaa in kor loo tarjumay oo martida ka maqan, sidaas darteed isticmaal cinwaanka host-ku dhab ahaan haysto.

Baadh xaaladda hadda jirta ka hor intaadan ballan qaadin lambarka shaxda ama mudnaanta qaanuunka. Qaanuunnada siyaasadda ee jira ayaa cusub hadhin kara, shax hore oo isla lambarka lehna waxaa laga yaabaa inay horey u qaaddo waddooyin aan xiriir lahayn:

ip -4 addr show dev eth0
ip -4 rule show
ip -4 route show table all

Kadib dooro shax isha ku saleysan. Qaanuunku wuxuu la jaanqaadaa jawaabaha horey u qaaday 192.0.2.10, taas oo si sax ah u tahay taraafikada maxalliga ah ee dhammaaday ee aad rabto inaad ka reebo. Taraafikada loo gudbiyay iyo baakadaha cinwaanno maxalli ah oo kale kama mid noqdaan.

Dhis shax soo-noqod buuxa, ma aha nus wadada caadiga ah

Shax kaliya leh wadada caadiga ah kuma filna. Kernel-ku wali waa inuu xalliyaa gateway-ga, xallintaasna waxay u baahan tahay prefix-ka ku xiran isla shaxda. Shax ka maqan prefix-kaas waa guuldareystaa xallinta gateway-ga xitaa marka wadadeeda caadiga ah ay u muuqato mid sax ah. Ku dar labadaba, kadib u jeedi qaanuunka isha shaxda:

ip -4 route add table 100 192.0.2.0/24 dev eth0 src 192.0.2.10
ip -4 route add table 100 default via 192.0.2.1 dev eth0
ip -4 rule add priority 1000 from 192.0.2.10/32 lookup 100

Isticmaal prefix-ka iyo gateway-ga dhabta ah halkii aad koobi lahayd tusaalaha. Interface daruuro ah oo loo habeeyay /32 oo leh gateway on-link wuxuu u baahan yahay waddo kale oo ku xiran, shax ka dhisantay prefix khaldanna waa guuldareystaa boodhka koowaad. Sifo src waxay tilmaantaa isha la doorbiday waddadaas; ma beddesho qaanuunka isha.

Nidaamkuna sidoo kale waa muhiim. Qaanuun ballaaran oo leh lambar mudnaan hoose ayaa marka hore la qiimeeyaa, sidaas darteed qaanuunka isha waa in la gaaro ka hor qaanuun kasta oo taraafikadan dib ugu celin lahaa shaxda weyn. Hubi mudnaanta ip rule show ka dib markaad ku darto, ma aha oo kaliya bilowga.

Xaqiiji raadin isha lagu qeexay

Weydii kernel-ka inuu maraariyo bartilmaameed tijaabo ah cinwaanka adeegga. Jawaabtu waa inay sheegto eth0 iyo gateway WAN, ma aha tunnel-ka:

ip -4 route get 198.51.100.25 from 192.0.2.10

Kadib samee xiriir cusub oo la oggolaaday oo fiiri labada jiho. Raadin dooranaya shaxda saxda ah halka xiriirka nool wali guuldareysta waxay tilmaantaa shaandhaynta wadada gadaal ama qaanuun firewall, ma aha shaxda. Hubi kontarooladaas ka hor intaadan waxba si caalami ah u damin.

Dhigo waddooyinka ugu dambeeya iyo qaanuunka hoosta maareeyaha shabakadda ee leh interface-ka. Isbeddelada cinwaanka, cusboonaysiinta DHCP iyo dib-u-xirka VPN dhammaantood waxay dib u qoraan xaaladda kernel-ka, qaanuun gacan lagu darayna wuu luntaa ama wuxuu tilmaantaa gateway duugoobay dhacdada xigta ka dib.

Halka awood-dhaafintan joogsato

Qaanuunku wuxuu ka reebaa taraafikada maxalliga ah ee dhammaaday hal cinwaan oo isha ah. Ma daboolo dekedaha Docker daabacay, DNAT ama adeegyada laga gudbiyay host-ka, sababtoo ah baakadahaas waxaa loo maraariyaa taraafik gudbin ah oo waligood si isku mid ah uma qaadaan isha maxalliga ah ee host-ka. Nashqadaha noocan ah sida caadiga ah waxay u baahan yihiin calaamad la dhigay soo-gelinta iyo qaanuun u dhigma calaamadda.

Sidoo kale ma keento in cinwaanka dadweynaha ee host-ku ka muuqdo interface-ka. Marka NAT kor ku yaal uu iska leh cinwaankaas, jawaabtu wali waa inay ka baxdo wadada ay NAT-taas filayso, sidaas darteed shaxda WAN waa inay ka tarjunto gateway-ga iyo prefix-ka asalka ah halkii ay ka tarjumi lahayd xadad dadweyne la qiyaasay.

Ku hay awood-dhaafinta diiwaan gashan iyada oo leh lambarka shaxdeeda, mudnaanta qaanuunkeeda iyo cinwaanka isha ee saxda ah. Isbeddelka xiga ee VPN ama interface-ka ayaa si aamusan u jabin kara, qoraal sheegaya saddexda qiimeyna waa ka sii dhaqso badan yahay in la hubiyo marka la barbardhigo calaamadda dib uga helidda warbixinta macmiilka.

Haddii adeeggu wali ugu jawaabo wadada khaldan ka dib markii raadinta isha lagu qeexay ay guulaysto, barbar dhig cinwaanka isha ee socket-ka nool iyo kan qaanuunku ku jira. Adeeg ku xiran cinwaan wildcard ah wuxuu dooran karaa ish ka duwan cinwaanka aad tijaabisay, farqiqaasuna waa farqiga hadhay.

Maqaallo la xiriira