Які кампанент насамрэч валодае лімітам маршрутаў OpenVPN?
Ліміт маршрутаў можа належаць рухавіку OpenVPN, плагіну NetworkManager або серверу. Назавіце ўладальніка, перш чым правіць профіль або павялічваць лік.
Профіль з двумаста маршрутамі працуе на адной машыне і ўсталёўвае сорак на іншай. Рухавік, інтэграцыя, якая яго запускае, і сервер, які яго корміць, маюць свой голас, і кожны можа спыніць спіс у розным месцы. Чытанне збою як аднаго ліміту вядзе вас да не таго файла. Механізм складаецца з трох этапаў, і этап, які спыніўся, пакідае бачныя сляды, калі ведаць, што шукаць.
Тры этапы, тры розныя ліміты
Спачатку рухавік разбірае опцыю і вырашае, ці разумее яе гэтая версія. Потым інтэграцыя ўсталёўвае тое, што паведамляе рухавік, і яе ўласны код можа абмежаваць або перафармаваць спіс. Нарэшце сервер вырашае, колькі маршрутаў ён аддасць пэўнай асобе, перш чым які-небудзь кліенцкі этап нешта ўбачыць. Тры этапы, тры столі, і толькі адна з іх — лік у профілі.
Падняцце адной столі нічога не робіць для іншых. Адхілены аддадзены маршрут можа быць рашэннем палітыкі на серверы, перакрыццём, якое вырашыў кліент, або лімітам усталёўшчыка, які адкінуў лішак. Кожны з гэтых выпадкаў мае сваё выпраўленне.
Аддзяліце гэтыя тры, перш чым нешта вымяраць. Памылка разборшчыка называе токен, ліміт усталёўшчыка пакідае кароткую табліцу маршрутаў, а рашэнне палітыкі не пакідае нічога. Сляды падказваюць, які этап правяраць першым.
| Stage | Who decides | What you can see |
|---|---|---|
| Parse | Client engine | An error naming the option |
| Install | Activation owner | A route count below the pushed count |
| Offer | Server policy | A route absent from the pushed list |
Разборшчык гаворыць першым
Невядомая опцыя правальваецца гучна і рана, а тэкст памылкі называе токен. Гэта самы просты для вызначэння этап: параўнайце дакладнае паведамленне з усталяванай версіяй рухавіка, бо опцыя, дададзеная ў адным выпуску, невядомая ў папярэднім. Профіль, скапіяваны з больш новага разгортвання, — звычайная крыніца гэтай няўзгодненасці. Разборшчык ніколі моўчкі не ігнаруе дырэктыву, якую не распазнае.
Прынятая опцыя нічога не кажа пра вынік. Разбор праходзіць, але спіс усё яшчэ можа быць абрэзаны ўсталёўшчыкам або ніколі не прапанаваны серверам. Лічыце чысты разбор дазволам працягваць, а не доказам.
Запішыце радок версіі з бінарніка, які сапраўды запусціўся, а не з уяўлення пакетнага менеджара пра тое, што ўсталявана. Гэтыя дзве рэчы разыходзяцца часцей, чым чакаецца.
Усталёўшчык мае сваю столю
Кампанент, які валодае актывацыяй, можа быць плагінам NetworkManager, а не бінарнікам рухавіка, і ён можа навязаць свой ліміт да стварэння любога тунеля. Яго рэдактар можа паказваць поле, якое працуючы рухавік ніколі не чытае, або чытаць поле, якое рэдактар не паказвае. Абедзве сітуацыі збоку выглядаюць як памылка кліента. Ні адну не выпраўляе рэдагаванне профілю.
Лічыце тое, што прызямлілася, а не тое, што было наладжана. Каманда ip route show dev tun0 пералічвае ўсталяваныя маршруты, і параўнанне гэтай колькасці з аддадзеным спісам аддзяляе адкінуты маршрут ад таго, што ніколі не адпраўляўся. Колькасць, якая супадае з аддачай, вяртае падазрэнне да сервера.
Абгортка абалонкі вакол бінарніка рухавіка, каб сілай дамагчыся большага ліку, зацямняе абнаўленні і робіць адкат здагадкай. Яна таксама хавае сапраўдны ліміт ад кожнага, хто чытае канфігурацыю наступным.
Сервер вырашае, што вам прапанавалі
Палітыка для кожнага кліента можа паменшыць спіс да перадачы. Файл, спецыфічны для кліента, можа дадаць маршруты для адной асобы, а групавая палітыка можа іх прапусціць, і кліент не можа адрозніць адфільтраваны маршрут ад таго, што ніколі не быў вызначаны. Гэтая неадназначнасць і ёсць прычына, чаму запіс сервера мае значэнне. Прасіце эфектыўны спіс аддачы для гэтай асобы, а не шаблон.
Параўнайце запіс сервера з атрыманым спісам. Разрыў паміж імі — гэта слой палітыкі, і ён звычайна меншы, чым мяркуе профіль.
Калі дызайн дазваляе, згусціце сумежныя сеткі і выдаліце састарэлыя запісы. Менш і буйнейшыя маршруты вырашаюць больш выпадкаў, чым вышэйшая столя.
Змяніце лік у правільным месцы
Выкарыстоўвайце дакументаваную наладу кампанента, які сапраўды валодае лімітам. Калі поле адсутнічае ў плагіне, праверце, ці плагін старэйшы за магчымасць або ці іншы бэкенд валодае маршрутамі. Затым запішыце версіі рухавіка, плагіна і сервера побач з выбраным значэннем. Наступнае абнаўленне зноў адкрые пытанне, і менавіта нататка робіць яго адказам.
Ператэстуйце пасля любога абнаўлення любога з трох. Ліміт, падняты ў правільным месцы, усё роўна зрушваецца, калі змяняецца кампанент, які яго ўжывае. Запіс версій — адзінае, што робіць гэтае зрушэнне прадказальным.