Kuelekeza trafiki ya VM kwenye mtandao wa host-only kupitia seva ya TUN OpenVPN
Tenganisha handaki na kiambishi cha host-only, sukuma njia ya mgeni, kisha mpe kila mashine pepe njia ya kurudi kwa kusudi kupitia mwenyeji.
Adapta za host-only huunda mtandao pepe wa ndani, na handaki za TUN zilizoelekezwa hubeba pakiti za IP kati ya anwani. Hakuna hata moja iliyo daraja kwa nyingine, kwa hiyo usanidi unaofanya kazi lazima useme nani anapeleka na njia ya kurudi ni ya nani. Ukipindua mgawo huu miwili, mgeni hujibu handaki kwa chanzo ambacho mteja wa handaki hakuwahi kuomba. Muundo ulio hapa chini hutenganisha viambishi vyote viwili na hufanya njia ya kurudi iwe wazi.
Mitandao miwili, viambishi viwili
Ipe bwawa la handaki na mtandao wa host-only viambishi tofauti na usitumie kimoja kwa kingine kamwe. Katika mfano huu bwawa la VPN ni 10.44.0.0/24 na mtandao wa host-only ni 192.168.99.0/24, mwenyeji akiwa 192.168.99.1 na mgeni akiwa 192.168.99.20. Kutoa kiambishi kimoja kwa kifaa cha TUN na kwa adapta ya host-only hakuviunganishi. Huunda madai mawili juu ya kiwango kimoja cha anwani, na jedwali la uelekezaji hujibu kwa dai lililobaki kwa bahati.
Adapta ya host-only ipo kwa mwenyeji na ndani ya mgeni, na haina njia ya kutoka kwenye mashine yenyewe. Miunganisho ya daraja na NAT ina mfiduo tofauti, na kubadili hali ya daraja si sharti la kufikia huduma moja ya mgeni.
Mwenyeji tayari anayo njia
Angalia kilichopo kabla ya kuongeza chochote. Mwenyeji ana kiolesura kwenye mtandao wa host-only na njia ya kiambishi hicho, vyote viliundwa adapta ilipoinuka.
ip -br addr show
ip route show 192.168.99.0/24
sysctl net.ipv4.ip_forward
Mstari wa tatu ni utaratibu unaomfanya mwenyeji kuwa hatua. Bila huo, pakiti inayowasili kutoka handaki inaelekezwa kwenye mtandao ambao mwenyeji anaweza kufikia lakini hatoutuma. Upelekaji ni lazima na hautoshi. Sera ya uchujaji bado huamua kama mtiririko fulani kati ya kiolesura cha handaki na kiolesura cha host-only unaruhusiwa, na uamuzi huo unapaswa kuwa kwa maandishi badala ya sera chaguo-msingi ambayo hakuna aliyesoma.
Sukuma njia, kisha chuja inachofikia
Seva inaweza kutoa kiambishi cha host-only kwa wateja wanaokubali njia zilizosukumwa, ambayo ni utaratibu huo huo unaotumika kwa mtandao mdogo mwingine wowote nyuma ya handaki.
push "route 192.168.99.0 255.255.255.0"
iptables -A FORWARD -i tun0 -o vboxnet0 -d 192.168.99.20 -p tcp --dport 5432 -j ACCEPT
iptables -A FORWARD -i vboxnet0 -o tun0 -s 192.168.99.20 -p tcp --sport 5432 -m conntrack --ctstate ESTABLISHED -j ACCEPT
Kanuni hizi mbili huruhusu huduma moja katika mwelekeo mmoja na majibu yake. Njia inayofikia kiambishi chote na kichujio kinachoruhusu mlango mmoja ni mchanganyiko wa kusudi; njia pamoja na kukubali bila masharti ndiyo njia ambayo huduma ya maabara inakuwa huduma iliyo wazi. Njia iliyosukumwa pia si idhini. Mteja anaikubali, mwenyeji anaituma, na ukuta wa moto wa mgeni na huduma yenyewe bado zina sauti.
Mgeni anahitaji njia ya kurudi
Mgeni anayefikiwa kutoka 10.44.0.x lazima atume majibu yake kwenye anwani ya host-only ya mwenyeji, au mwenyeji lazima atafsiri chanzo. Kupokea anwani kutoka DHCP ya VirtualBox hakisemi chochote kuhusu mojawapo ya mipangilio hiyo miwili.
ip route add 10.44.0.0/24 via 192.168.99.1 dev enp0s8
ip route get 10.44.0.15
Kuongeza njia hiyo ndani ya mgeni huhifadhi chanzo asilia, jambo linalofanya sera na kumbukumbu kwa kila mteja ziwe na maana. Utafsiri mdogo wa chanzo kwa mwenyeji ni mbadala, na unafanya kazi, kwa gharama ya kuficha ni mteja gani aliunganisha. Mwingiliano ni hali nyingine ya kushindwa. Mteja wa mbali ambaye LAN ya nyumbani tayari inatumia 192.168.99.0/24 atasoma njia iliyosukumwa kama mtandao wake mwenyewe, na hakuna mabadiliko upande wa seva yanayotatua utata huo. Namba upya upande mmoja au chagua kiambishi kisichowezekana kugongana.
Kifaa cha TUN hubeba pakiti za IP, kwa hiyo kuongeza lango chaguo-msingi ndani ya mgeni hakufanyi handaki kuwa sehemu ya Ethernet pamoja na adapta ya host-only. Daraja la TAP ni muundo tofauti wenye msaada wake wa wateja na umiliki wa anwani, na kuchanganya maelezo mawili huleta usanidi ambao haukutani kamwe.
Thibitisha, kisha ufanye ustahimili uanzishaji upya
Jaribu huduma moja isiyo na madhara kutoka mteja wa kawaida wa mbali, angalia njia ya kurudi ya mgeni, na uthibitishe kwamba huduma usiyoiruhusu inakataliwa badala ya kuwa polepole.
ss -lntp '( sport = :5432 )'
conntrack -L | grep 192.168.99.20
Kisha anzisha upya huduma ya VPN na mtandao wa mashine pepe, na urudie ukaguzi huo mitatu. Njia iliyoongezwa kwa mkono hudumu hadi kuwasha upya kunakofuata, na usanidi unaofanya kazi tu katika kikao cha joto si muundo. Andika viambishi viwili, sera ya upelekaji na njia ya mgeni pamoja. Yeyote atakayeongeza mashine pepe inayofuata atahitaji vyote vitatu na vinginevyo atavigundua upya muunganisho mmoja ulioshindwa baada ya mwingine.