Mac L2TP бөлүнгөн маршруттар: эмне үчүн хост дареги иштебейт
setadditionalroutes тармак жана маска жуптарын талап кылат, бүт тизмени алмаштырат жана кызматтын так атын талап кылат. Шлюзду күнөөлөөдөн мурун таблицаны текшериңиз.
VPN туташат, меню тилкеси аны көрсөтөт, бирок ички хост дагы эле убакыттын өтүшүнөн өтөт. Мындай кырдаалда үч мүмкүн болгон себеп бар, жана кайсынысы тиешелүү экени туннелдин кантип конфигурацияланганына байланыштуу. Же маршрут буйругу тармак дареги керек жерде хост дарегин колдонду, же профилдин өзү чечимди жутуп кетүүчү демейки маршрутту орнотот, же клиент профиль ачкычынын ордуна илгич керек болгон PPP туннели. Аларды ошол тартипте текшериңиз, анткени биринчисин четтетүү эң арзан.
Барар жери тармак дареги, маска префиксти сүрөттөйт
networksetup -setadditionalroutes барар жердин, ички тармактын маскасынын жана шлюздун үчтүктөрүн алат. Бир ички тармакты туннел аркылуу жиберген чакыруу мындай көрүнөт:
sudo networksetup -setadditionalroutes "VPN (L2TP)" 192.168.1.0 255.255.255.0 10.2.0.0
Барар жери эмне экенине көңүл буруңуз: тармак дареги, сиз жетүүгө аракет кылып жаткан сервердин дареги эмес. Ушул макалага себеп болгон учурда, ошол орунда 192.168.1.20 бар окшош буйрук эч пайдалуу нерсе кылган жок, жана аны 192.168.1.0 менен алмаштыруу дароо иштеди. Ошол эле маска, ошол эле шлюз, бир башка сан. Бул бүт ийгиликсиздик кичинекей түрдө.
Себеби саясат эмес, арифметика. /24 маска менен жупташкан хост дареги 192.168.1.0/24 деп сүрөттөбөйт; ал маршруттоо таблицасы пайдалуу кармай албаган нерсени сүрөттөйт, ошондуктан жазуу четке кагылат же этибарга алынбайт жана туннел акырында сиз ойлогондон азыраак ташыйт.
Так бир хост керек болгондо, хост дарегин 255.255.255.255 маскасы менен колдонуңуз. Так ушул жерде аралаш жуптар жаңылышат, хост дарегин колдонуунун өзү эмес. Бир даректен курулган /32 мыйзамдуу маршрут; бир даректен курулган /24 ката.
Чакыруу тизмени алмаштырат, ал эми ат сөзмө-сөз
Биринчи аракетте адамдарды эки жүрүм-турум таң калтырат. Буйрук кошуунун ордуна кошумча маршруттардын толук тизмесин конот, ошондуктан бир префикс кошкон чакыруу мурун болгон башкаларын үнсүз жок кылат. Бүт жыйынды бир чакырууда куруңуз.
Кызматтын аты да сиз ойлоп тапкан белги эмес. Аны куралдан окуп, түрүнүн уландысы менен кошо так көчүрүңүз:
networksetup -listallnetworkservices
Бир белги менен айырмаланган ат окууга татыктуу ката да, маршрут да бербейт. Бул жерде туура ыкма — көчүрүп коюу, эстен кайра теруу эмес.
Профиль демейки маршрутту талап кылганда
Бөлүнгөн маршруттар өздөрү ачык камтыбаган ар кандай барар жер үчүн демейки маршрутка утулат, жана толук туннелге конфигурацияланган L2TP профили так ошону орнотот. Профиль баары туннел аркылуу өтөт десе, кошумча маршруттардын тизмеси абдан аз өзгөрөт. Сиздин жазууңуз ката эмес; ал эч качан атабаган барар жерлер үчүн жөн гана тиешесиз. Муну көзөмөлдөө адатта кандайдыр бир маршрут буйругунда эмес, профилдин бүт трафикти жөнөтүү параметринде болот.
Дагы жазууларды оңдоодон мурун кайсы модель керек экенин чечиңиз. Өзгөчөлүктөрү бар толук туннел — так префикстери бар бөлүнгөн туннелден башка конфигурация, жана экөөнү аралаштыруу эч ким болжолдой албаган таблицаны жаратат.
Эгер уюм толук туннелди талап кылса, аны жергиликтүү бөлүүгө аракет кылууну токтотуңуз жана талапты саясаттын ээсине алып барыңыз. Ага каршы келген жергиликтүү кошулган маршрут кийинки профиль жаңыртуу менен баары бир жок кылынат.
PPP туннелдерине ачкычтын ордуна илгич керек
PPP негизиндеги туннелдер үчүн defaultroute демейки маршрутту түзгөн профиль ачкычы; аны алып салсаңыз, клиент ар бир барар жерди талап кылууну токтотот. Андан кийин маршруттар интерфейс пайда болгондон кийин кошулат, адатта /etc/ppp/ip-up ичинен:
#!/bin/sh
/sbin/route add -net 192.168.1.0 -interface ppp0
Скриптти root ээлигинде жана аткарылуучу күйдө кармаңыз, жана машинада бирден ашык туннель профили болгондо интерфейс атына коргоо кошуңуз. Ар бир PPP байланышы үчүн иштеп, бир түзмөктүн атын болжолдогон илгич — узак өмүрдүү кичинекей ката.
Бөлүнүүнү үч суроо менен текшериңиз
Туташкан маалда таблицаны жазып алыңыз жана кайсы интерфейс туннелге кызмат кыларын белгилеңиз. Андан кийин аны түзгөн буйруктун чыгуу статусуна ишенүүнүн ордуна так барар жерди текшериңиз. Чыгуу коду куралдын аргументтерди кабыл алганын билдирет, трафиктин сиз ойлогон жол менен жүргөнүн эмес.
Бөлүнүүнү далилдеген үч суроо менен бүтүрүңүз: дарек боюнча бир ички хост, ички чечүүчү аркылуу бир ички ат жана дагы эле жергиликтүү байланышты колдонушу керек болгон бир ачык сайт. Эгер ачык сайт азыр туннел аркылуу да өтсө, маршруттар тизмеси эмне десе да, бөлүнүү эч качан болгон эмес.
Дагы бир жолу туташып, ички суроону кайталаңыз, анткени кол менен кошулган маршруттар аларды жарактуу кылган интерфейстен узак жашашы мүмкүн жана туннел кулагандан кийин трафикти үнсүз кара көңдөйгө айландырат.