Квар је конкретан: Docker не може да пронађе прихватљиву аутоматску подмрежу за нову мостовну мрежу. То не значи да је рачунару понестало адреса, нити да је VPN покварен. Дијагнозу одређују два питања: које кандидатне блокове демон види и које од њих његов алокатор искључује у овом окружењу. Прођите кроз њих тим редом, јер друго питање нема смисла док прво није одговорено.

Потврдите шта није успело пре него што било шта промените

Извршите кораке испод на хосту који покреће демон. Љуска која разговара са удаљеним контекстом описује други рачунар, а сама та грешка може да потроши сат времена.

Забележите истовремено и верзију Engine у картици. Свака хеуристика у остатку овог приручника везана је за верзију, а тврдња без верзије је гласина.

Пребројте доделе које већ имате

Излистајте мреже, па прегледајте оне које су важне: docker network ls, затим docker network inspect NETWORK_NAME. Прочитајте њихове IPAM подмреже и контејнере прикључене на сваку. Неколико Compose пројеката троши више блокова него што сугерише број њихових контејнера, јер сваки пројекат тежи да створи сопствену подразумевану мрежу. Заустављени контејнер не ослобађа доделу своје мреже.

Проверите и конфигурацију скупа, јер подразумевани скуп има основни распон и величину префикса по мрежи. Велике доделе по мрежи брже исцрпљују доступне блокове, а то је чињеница о капацитету, не проблем усмеравања.

Запишите број. То је основна линија која вам каже да ли је следећа промена помогла.

Упоредите како демон види руте

VPN може да утиче на избор кандидата, али конкретна имплементација одлучује како. У Moby 28.2.2 на Linux InferReservedNetworks прикупља адресе сервера имена и одређене on-link IPv4 руте и не резервише једноставно сваку руту из сваке табеле. Прикупљене линк руте такође искључују неодређену одредишну адресу, па једна рута 0.0.0.0/1 сама по себи не резервише сваку адресу. Други широки on-link префикс, попут 128.0.0.0/1, може да пресече познате кандидатне распоне 172 и 192.

Упоредите ip -4 route show table all пре и после повезивања VPN-а, на хосту демона. Разлика је доказ, а верзија је обим тврдње.

Не генерализујте хеуристику једног издања на свако издање. Тако одговор са форума постаје промена политике.

Изаберите најмању исправку која делује

Ако потврђена неискоришћена мрежа држи блок који вам треба, испланирајте њено циљано повлачење са власником уместо широког поткраћивања. За нову мрежу, изричито прегледана неискоришћена подмрежа потпуно избегава зависност од аутоматског избора. Та подмрежа ипак мора да избегава стварне Docker, LAN и потребне VPN дестинације, јер приватно не значи безбедно. Усмеравање стварног удаљеног префикса заменило би грешку доделе за прекинут приступ.

Промена default-address-pools је шира политика о будућим доделама. Изаберите базу без сукоба и одговарајућу додељену величину, спојите је са постојећим поставкама демона и испланирајте документовани утицај поновног покретања. Постојеће мреже се не пренумеришу тихо.

Не онемогућавајте слање корпоративних рута да би додела успела. Изричит план адреса обично решава локални проблем без слабљења обавезне политике.

Прихватите доделу и усмеравање одвојено

Након промене прегледајте подмрежу коју је Docker стварно створио и тестирајте апликацијске VPN и локалне зависности. Успешна додела и исправно усмеравање у раду две су различите провере прихватања, а пролаз прве није доказ за другу. Ако апликација не може да дође до ресурса иза тунела, имате проблем усмеравања који је грешка скупа крила. Забележите оба резултата у картицу.

Чувајте разлику рута и број скупа уз запис о промени, јер следеће ажурирање VPN клијента може да промени прво без дирања Docker-а.

Приручник је потпун када неко други може да понови те две провере и добије исти одговор.

Повезани чланци