LAN клиентите го игнорираат VPN-от на рутерот додека не се вклучи политичко насочување
Правилата за проследување дозволуваат пакети, но никогаш не избираат интерфејс. Одделна табела за политики и правило одлучуваат кои LAN клиенти го користат VPN-от на рутерот.
Рутерот стигнува до интернет преку својот тунел, додека лаптопот зад него се уште пријавува адреса на ISP. Додавањето правила за прифаќање не помага, а тој неуспех е поучен: филтрирањето одговара дали пакетот смее да помине, а не каде оди. Изборот на интерфејс веќе го направи пребарување на рути што не знае ништо за вашата листа на клиенти. Поправете го пребарувањето и огнениот ѕид повеќе не е осомничен.
Правило за филтрирање не може да избере интерфејс
Текот на пакети на Linux рутер прво ја извршува одлуката за рутирање, а потоа куката forward. Кога правило ќе се совпадне со излезниот тунелски уред, јадрото веќе одлучило дека тунелот е излезот. Ако главната табела се уште го претпочита стандардниот маршрут преку WAN, пакетот е на пат кон ISP и правилото за прифаќање што штотуку го напишавте никогаш не го гледа. Овој единствен факт за редоследот објаснува зошто страница нови правила за огнен ѕид не менува ништо.
Примерот подолу користи LAN 192.168.8.0/24 на br-lan, тунелски уред tun0 и еден set-top box на 192.168.8.23 што треба да оди низ тунелот.
Прочитајте го пребарувањето пред да уредувате правила
Побарајте од јадрото да реши рута во името на тој клиент. Одговорот го вклучува излезниот уред и изворната адреса што би била избрана, и тоа е се што ви треба за да ја потврдите дијагнозата. Ако одговорот го именува уредот WAN, пакетот никогаш немал шанса да стигне до вашето правило.
ip -4 route get 198.51.100.7 from 192.168.8.23
Повторете го барањето за клиент што треба да остане на обичниот пат. Кога двата одговора го именуваат истиот уред, политика по извор се уште не е во игра, а поправката припаѓа на рутирањето, а не на филтрирањето.
Прикачете табела на клиентите што сакате да ги покриете
Политичкото насочување вметнува пребарување на правила пред главната табела. Изградете табела чиј стандарден маршрут е тунелот, потоа поврзете ја таа табела со селектор: влезен интерфејс, изворна адреса или ознака на огнениот ѕид. Приоритетите го одредуваат редот, а главната табела стои многу ниско на листата, на 32766, па правило со мал број се разгледува прво. Селекторите на интерфејс го покриваат секој клиент на мостот; селекторите на адреса покриваат една машина.
ip -4 route add default dev tun0 table 200
ip -4 rule add iif br-lan lookup 200 priority 200
Интерфејсите на фирмверот обично ги прикажуваат истите објекти како страницата за политичко насочување или VPN политика. Листата на уреди таму е полесна за одржување од рачно напишани правила и обично преживува надградби што ја менуваат синтаксата на правилата.
Изберете го селекторот намерно. Правилото за интерфејс е кратко и трајно, но ги фаќа и сопствениот административен сообраќај на рутерот што пристигнува на тој мост. Правилото за извор е точно и бара уредување секогаш кога ќе се промени листата на уреди. Запишете го изборот, бидејќи ќе му треба на следниот човек што ќе праша зошто еден уред се однесува поинаку.
Држете ги локалните одредишта надвор од тунелот
Новата табела ги знае само маршрутите што ќе ги ставите во неа. Префиксот LAN недостасува, па сообраќајот на печатачот и NAS би го следел стандардниот маршрут на тунелот и би исчезнал. Throw маршрутот го завршува пребарувањето во оваа табела и ја враќа одлуката на главната табела.
ip -4 route add throw 192.168.8.0/24 table 200
Прескокнете го тој маршрут и локалните споделени ресурси се кршат, а сопствената административна сесија на рутерот може да исчезне ако селекторот е поширок од предвиденото. Потоа решете го прашањето за изворот: тунелските пакети што се уште носат LAN адреси треба да имаат далечна страна што знае повратен пат, додека masquerading на тунелот го отстранува тој услов и ја отстранува и идентитетот на клиентот што далечната страна би го видела.
Правилата и маршрутите додадени за време на работа исчезнуваат по рестарт или надградба на фирмверот. Додајте ги во механизмот за стартување на рутерот, рестартирајте еднаш и тестирајте повторно од клиентот: неговата јавна адреса, втор клиент што треба да остане на WAN и бројачите на тунелот за време на нова врска.