Є три місця, докер буде генерувати мережеві підмережі.
- Міст за замовчуванням
- Мостові мережі, створені користувачем
- Режим роя генерується накладними мережами
Для мосту за замовчуванням (який називається "міст") ви можете вказати BIP (я вважаю, це Bridge IP; переконайтеся, що це IP-хост, а не мережевий IP ) у daemon.json
файлі. А для мостових мереж, створених користувачем, ви можете визначити пул підмережі для вибору (якщо припустити, що користувач не вказує вручну підмережу). Для цих двох ваше /etc/docker/daemon.json
виглядатиме так:
{
"bip": "10.200.0.1/24",
"default-address-pools":[
{"base":"10.201.0.0/16","size":24},
{"base":"10.202.0.0/16","size":24}
]
}
Кожен параметр пулу адрес вище визначає діапазон CIDR та розмір підмереж, які слід виділити з цього діапазону. Отже, вище визначає два діапазони класу В, які виділяються як мережі класу С (/ 24). Для пулів адрес за замовчуванням вам потрібно принаймні 18.06. Вам потрібно буде перезавантажити демон-докер, щоб застосувати цю зміну ( systemctl reload docker
). І ця зміна змінить лише новостворені мережі користувачів, тому вам потрібно буде зупинити контейнери та видалити існуючі мережі в неправильному діапазоні.
У 18.09 Докер додав можливість вказувати діапазон адрес для режиму згенерованого режиму згенерованого режиму. Це можна зробити лише під час створення рою прямо зараз, сподіваємось, що це буде оновлено у майбутньому, що дозволить docker swarm update
скорегувати ці пули:
$ docker swarm init \
--default-addr-pool 10.202.0.0/16 \
--default-addr-pool 10.203.0.0/16 \
--default-addr-pool-mask-length 24