Àwọn ìlà àkọsílẹ̀ méjì ti OpenVPN bẹ̀rẹ̀ pẹ̀lú àwọn ọ̀rọ̀ kan náà, ṣùgbọ́n ọ̀kan nínú wọn ni ó ń ròyìn ìṣòro. Could not determine IPv4/IPv6 protocol. Using AF_INET jẹ́ ìkéde ìpadàsẹ́yìn: profáìlì fi ẹbí àdírẹ́sì sílẹ̀ ní ṣíṣí, nítorí náà daemon yan ọ̀kan ó sì tẹ̀síwájú. Ẹ̀ka ìkùnà náà ròyìn pé a kò ṣẹ̀dá socket kankan, ó sì béèrè fún àtúnbẹ̀rẹ̀. Ohun gbogbo tó wà lẹ́yìn ìpilẹ̀ṣẹ̀ tí wọ́n pín yà wọ́n sọ́tọ̀, nítorí náà ka kọjá ibẹ̀ kí o tó yí nǹkan kan padà.

Ohun tí ìkéde ìpadàsẹ́yìn ń ròyìn

OpenVPN gba ẹbí tó ṣe kedere nípasẹ̀ proto udp4 tàbí proto udp6, ó sì gba proto udp nígbà tí a bá ní láti yọ ẹbí náà jáde ní ìbẹ̀rẹ̀. Nínú ọ̀ràn kejì daemon ń yẹ àlàyé ìsopọ̀ àdúgbò, ó sì yan.

Nígbà tí ìyọjáde yẹn bá ṣiṣẹ́, ìkìlọ̀ náà sọ ọ̀nà tí ó gbà, ilana náà sì ń tẹ̀síwájú láti ṣẹ̀dá socket. Sérùbà tó ní proto udp lórí ẹ̀rọ tó ní ìpele méjì sábà máa ń parí ní IPv4 ní ọ̀nà yìí. Kò sí ohun tó jẹ́ àṣìṣe ní ọ̀nà yẹn, kò sì sí ohun tó ń tọ́ka sí ìkọlù, sérùbà wẹ́ẹ̀bù tó ṣáko, tàbí àkọsílẹ̀ tí a kọ̀. Ìlà náà wúlò kìkì nítorí pé àwọn àyẹ̀wò tó tẹ̀lé yẹ kí a fi wé ẹbí tí ó dárúkọ.

Wo ó bí ìdáhùn sí ìbéèrè kan, kì í ṣe ìwádìí àrùn. Ó sọ ẹbí tí ilana yìí yàn, kò sì sọ ohunkóhun nípa ìdí tí aláìsàn kò fi lè sopọ̀.

Bí ẹ̀ka ìkùnà náà ṣe rí

Nígbà tó yá nínú kóòdù socket kan náà, ẹ̀ka kan wà tí kò sí socket rárá. Ó ṣàkọsílẹ̀ ìfiránṣẹ́ ẹbí àdírẹ́sì tó kúrú, ó sì béèrè àtúnbẹ̀rẹ̀, nítorí kò sí ohun tó kù láti tẹ̀síwájú. Àwọn ọ̀rọ̀ ìbẹ̀rẹ̀ bá ìpadàsẹ́yìn mu; èsì kò bá a mu.

Ya wọ́n sọ́tọ̀ nípa ohun tó ń tẹ̀lé. Bí daemon bá ń ṣiṣẹ́ tẹ̀síwájú, tí ó sì ń ròyìn olùgbọ́ rẹ̀, ìlà náà jẹ́ ìsọfúnni. Bí ó bá jáde tàbí ó tún bẹ̀rẹ̀ nínú ìyí, ọ̀rọ̀ ti wá nípa ìsopọ̀.

Wíwá nínú grep kì í ṣe ìdámọ̀ ẹ̀ka. Gbólóhùn náà máa ń farahàn nínú àwọn àkópọ̀ tí ń yí, nínú àwọn ìlà tí a tẹ́, àti nínú àwọn àyọkà àkọsílẹ̀ tí àwọn ènìyàn ń lẹ̀ mọ́ láti ọwọ́ kejì, nítorí náà ka àwọn ìlà tó wà nítòsí àti ìtòlẹ́sẹẹsẹ àmì àkókò dípò ìbámu kan ṣoṣo.

Yẹ olùgbọ́ dípò ìkìlọ̀

Sérùbà tó ń ṣiṣẹ́ ń dáhùn ìbéèrè ẹbí náà ní tààrà, láì ṣe àfikún láti inú àkọsílẹ̀.

ss -lunp | grep openvpn
ss -ltnp | grep openvpn

Fi ẹbí, àdírẹ́sì àti ibudo wé profáìlì. Ìlà 0.0.0.0:1194 jẹ́ IPv4 nìkan, nígbà tí ìlà [::]:1194 lórí ẹ̀rọ ìpele méjì lè gba ẹbí méjèèjì ní ìbámu pẹ̀lú ètò bindv6only. Bí profáìlì bá sọ udp tí socket sì jẹ́ IPv4, àwọn aláìsàn tí olùyẹ́rà wọn kò fi kókó AAAA padà yóò kùnà kí a tó dúnnáàdúrà tunnel.

Lẹ́yìn náà dánwò láti ọ̀dọ̀ aláìsàn tó dàbí àwọn olùlò rẹ: ọ̀nà olùyẹ́rà kan náà, irú nẹ́tíwọ́kì kan náà. Ìsopọ̀ àdúgbò láti sérùbà kò fi àbáyọ púpọ̀ nípa ìrìnàjò tó ń gba ẹ̀rọ NAT tàbí òfin odi iná tí a kọ fún ẹbí kejì.

Ìgbà tí fífipá ẹbí jẹ́ òdodo

Fífi proto udp4 mọ́ra bá ìṣàfilétí IPv4 nìkan mu: orúkọ DNS A nìkan, àwọn òfin odi iná fún àdírẹ́sì v4 kan, àwọn aláìsàn lẹ́yìn àwọn olùpèsè tó ń fún ni ní àdírẹ́sì v4 nìkan. Ó yọ àìdánilójú kúrò, ó sì jẹ́ kí ẹgbẹ́ ìlà àkọsílẹ̀ tó tẹ̀lé lè ṣe àfọ̀rọ̀wánilẹ́nu.

Àríyànjiyàn kan náà ń ṣiṣẹ́ lọ́nà òdì fún àyíká tó fi IPv6 sí ipò àkọ́kọ́, àti udp6 níwájú ìpìlẹ̀ aláìsàn A nìkan jẹ́ ìdábọ́ tí ìwọ fúnra rẹ dá. Fífipá ẹbí kìkì láti pa ìkìlọ̀ tí kò léwu mọ́ ni ẹ̀yà àtijọ́ ti àṣìṣe yìí, nítorí o ti yí ẹni tó lè sopọ̀ padà fún àkọsílẹ̀ tó jẹ́ jẹ́.

Yan ní ìbámu pẹ̀lú àwọn ibi ìparí àti àwọn aláìsàn tó gbọ́dọ̀ dé ibẹ̀. ìwé ìtọ́sọ́nà OpenVPN 2.6 ṣàkọsílẹ̀ àwọn irú ọ̀nà gbígbé, àti ìfiránṣẹ́ jẹ́ èsì ti yíyàn yẹn, kì í ṣe ohun tí a fi sínú rẹ̀.

Jẹ́ kí àkọsílẹ̀ kúrú

Kọ ìlà gbẹ́kẹ̀ pẹ̀lú àmì àkókò rẹ̀, ètò gbígbé tó wúlò láti profáìlì tó ń ṣiṣẹ́, socket gẹ́gẹ́ bí kẹ́nẹ́lì ṣe ròyìn rẹ̀, àti ìpele tó kàn tí ó kùnà. Àwọn ohun mẹ́rin yẹn yanjú fẹ́rẹ̀ẹ́ gbogbo ìbéèrè tí ìfiránṣẹ́ náà gbé dìde, kò sì sí ọ̀kan nínú wọn tó nílò àròsọ nípa àwọn iṣẹ́ tí kò ní í ṣe. Wọ́n tún ye ìfàṣẹ́wọ́, èyí tí àwòrán ojú-ìwé grep kò ṣe.

Àwọn àbá àpò tó ń wá pẹ̀lú ìkìlọ̀ yìí kò ní í ṣe títí àṣìṣe kan yóò fi dárúkọ fáìlì ìmúṣẹ tó ṣáko.

Bí ifconfig bá ṣáko ní tòótọ́, daemon sọ ọ́ ní orúkọ nígbà tí skript kan bá pè é, èyí sì yẹ fún ìwádìí tirẹ̀. Ìlà AF_INET àti ohun èlò tó ṣáko jẹ́ àwọn ìkùnà ọ̀tọ̀ọ̀tọ̀, fífi nǹkan sínú jẹ́ kí a lè rí bí ìkìlọ̀ yóò yí padà ni ọ̀nà tí ẹ̀rọ mímọ́ fi di adélébò.

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