Routing tas-sors għal żewġ pools VPN: x'titlef ir-regola tiegħek
Regola tal-forma from taqbel mal-indirizz tal-klijent qabel SNAT jerġa' jiktbu, u test mill-gateway ma jaqbilx ma' waħda minnhom. Mexxi t-tfittxija għal kull pool u aqra l-prijoritajiet minflok.
Żewġ pools ta' klijenti, gateway wieħed, u l-pjan jidher trivjali: regola waħda tibgħat l-ewwel pool mill-uplink mgħaġġel, oħra tibgħat it-tieni pool minn tunnel ta' sieħeb. Imbagħad ir-regoli jkunu fil-post u t-tieni pool xorta joħroġ mir-rotta default. Ir-regola mhix miksura. Is-sors tal-pakkett mhuwiex dak li l-awtur stenna fil-mument tat-tfittxija, għax it-traduzzjoni u t-tfittxija jsiru f'punti differenti fil-vjaġġ tal-istess pakkett, u l-ordni hija l-oppost tad-dijagramma mentali li jpinġu l-biċċa l-kbira.
It-tfittxija ssir qabel ma s-sors jerġa' jinkiteb
Għal pakkett li jiġi mgħoddi minn klijent VPN, il-kernel iwettaq sekwenza fissa. Jasal fuq l-interface tat-tunnel, jgħaddi minn prerouting fejn jgħixu conntrack u DNAT, imbagħad tittieħed id-deċiżjoni tar-routing, imbagħad il-forwarding, imbagħad postrouting fejn SNAT jiġi applikat l-aħħar. Regola tal-forma from tiġi kkonsultata waqt dik id-deċiżjoni tar-routing, jiġifieri tara l-indirizz oriġinali tal-klijent, mhux dak tradott.
Għalhekk iż-żieda ta' regola masquerade ma tbiddilx liema politika taqbel mal-fluss ħiereġ. Li jinbidel huwa dak li jara t-tarf imbiegħed, u għalhekk liema triq tar-ritorn teżisti. Dawn huma żewġ konsegwenzi differenti, u r-reviżjonijiet tal-bidliet kontinwament jaħbtu bejniethom. Aqsamhom u d-disinn normalment isir ċar fi żmien minuta.
Fid-direzzjoni tat-tweġiba jidher l-indirizz tradott fir-regoli. Pakkett li jerġa' lura lejn il-gateway ikun indirizzat lejn l-indirizz tradott, u jekk għandek regoli tal-politika bbażati fuq id-destinazzjoni jew fuq l-interface li daħal minnha, dak huwa l-valur li se tqabbel. L-istess konnessjoni, sors differenti tal-verità f'kull direzzjoni.
| Stage | Source the kernel sees | What it means for your rule |
|---|---|---|
| Prerouting | Client address, 172.31.7.42 | Where marks and DNAT are applied |
| Routing decision | Still 172.31.7.42 | This is where from rules match |
| Postrouting | Becomes 198.51.100.9 | What the far end and its return route see |
Għalhekk żewġ pools b'sorsi differenti tassew jeħtieġu tabelli differenti, u d-disinn huwa sod. Li t-tabella ta' fuq teskludi huwa l-qasira li tiddenubja billi tara x'irċieva s-sit imbiegħed u tiddeduċi r-regola minn hemm.
Test mill-gateway mhuwiex test tal-pool
It-traffiku li l-gateway innifsu jiġġenera qatt ma jgħaddi minn prerouting, għax ma wasalx fuq interface. Jiġi routed fil-passaġġ tal-output, bl-indirizz tal-gateway innifsu bħala sors, u regola from ibbażata fuq firxa ta' klijenti ma taqbilx. Kull ticket f'dan il-qasam li jgħid li jaħdem mill-kaxxa imma mhux mill-klijent huwa l-istess fatt ripetut.
Issimula l-klijent minflok tqarrbu b'approssimazzjoni. It-tfittxija tar-routing tista' tiġi mistoqsija direttament, b'sors u interface tad-dħul mogħtija:
ip route get 198.51.100.9 from 172.31.7.42 iif tun0
ip route get 198.51.100.9 from 172.31.8.42 iif tun0
ip route show table 201
Mexxiha darba għal kull pool. Jekk iż-żewġ kmandi jirritornaw l-istess interface, ir-regoli mhumiex jifirdu l-pools, u r-raġuni hija jew regola neqsin jew regola b'prijorità ogħla li taqbel ma' tnejn. Jekk jirritornaw interfaces differenti imma l-klijent xorta jonqos, il-ħsara tinsab wara t-tfittxija u tista' tieqaf tħares lejn ir-regoli.
Prijorità, mhux pożizzjoni fil-fajl
Ir-regoli jiġu evalwati bl-ordni axxendenti tal-prijorità, u n-numru huwa dak li jgħodd, mhux l-ordni li ttajpjajthom biha. It-tabella local tinsab fuq prijorità 0, it-tabella main fuq 32766 u r-regola default fuq 32767, għalhekk regola miżjuda bil-prijorità default tinżel qrib it-tmiem tal-lista u titlef kontra kważi kollox.
ip rule show
ip rule add from 172.31.8.0/24 lookup 201 priority 1000
ip -4 route show table 201
Prijorità espliċita tagħmel l-ordni maħsub viżibbli fil-fajl u fir-reviżjoni. Hija wkoll tipprevjeni li żieda aktar tard taqbeż bil-kwiet quddiem regola eżistenti, li hija l-aktar kawża komuni li politika li taħdem tieqaf taħdem wara bidla mhux relatata.
Regola li taqbel u tindika tabella mhux kompleta hija n-nassa l-oħra. Jekk it-tabella 201 fiha rotta default imma l-ebda rotta lejn id-destinazzjoni, il-pakkett jintefa' jew jintbagħat post żbaljat, u r-regola tidher perfettament korretta waħedha. Aqra t-tabella, mhux biss ir-regola. Regola hija pointer, u tabella vojta hija pointer għal xejn.
It-triq tar-ritorn xorta trid teżisti
Il-politika tas-sors tagħżel ħruġ. Ma toħloqx triq tar-ritorn. Jekk it-tieni pool joħroġ minn tunnel ta' sieħeb, is-sieħeb irid ikun jaf kif jasal għal 172.31.8.0/24, jew b'rotta lura lejn il-gateway jew billi jirċievi indirizzi tradotti li diġà jaf.
L-għażla bejn it-tnejn hija deċiżjoni tad-disinn b'konsegwenzi viżibbli. L-irouting tal-firxa tal-klijenti lura jżomm l-identità ta' kull klijent għand is-sieħeb u jeħtieġ li jaċċetta l-prefiss tiegħek. It-traduzzjoni taħbi l-pool wara indirizz wieħed u teħtieġ li s-sieħeb jaċċetta biss dak l-indirizz, bl-ispiża li l-logs tiegħek u tiegħu ma jibqgħux jaqblu dwar min ikkonnetta.
X'ikun li tagħżel, iktibha ħdejn id-definizzjoni tal-pool. Triq tar-ritorn li teżisti biss fil-memorja ta' xi ħadd hija eżatt it-tip ta' ħaġa li tibqa' ħajja sakemm is-sieħeb ibiddel firewall, u mbagħad tieħu jum biex terġa' tinbena.
Taqbadx it-tunnel tal-gateway innifsu fil-politika
Ir-regoli li tikteb għall-klijenti japplikaw ukoll għat-traffiku li jiġġenera l-gateway, sakemm ma teskludihx. Regola wiesgħa bbażata fuq marka jew fuq l-interface tal-output tista' taqbad il-konnessjoni tal-gateway innifsu mas-sieħeb, u mbagħad it-tunnel li jġorr il-politika jiġi routed mill-politika. Dan jipproduċi loop jew qtugħ li jidher bħal ħsara tal-fornitur.
Illimita kull regola kemm jista' jippermetti d-disinn: prefiss tas-sors, interface tad-dħul u, fejn appoġġjat, marka li jġorru biss pakketti tal-klijenti. Imbagħad ittestja l-konnettività tal-gateway innifsu wara kull bidla fir-regoli, għax il-ħsara hija awtoreferenzjali u ma tidhirx f'test mill-klijent.
Il-paġna tal-manwal ta' ip-rule tiddokumenta s-semantika tas-selettur u tal-prijorità. Għaqqadha ma' test tat-tfittxija għal kull pool u d-disinn isir verifikabbli, u din hija d-differenza bejn routing tal-politika li jiflaħ sena u ieħor li kulħadd jibża' jmessu.