У меня есть Azure Ubnuntu VM с некоторыми контейнерами докеров.
Проблема: ВМ не знает маршрут к одному из моих докерских интерфейсов networks\, который пересекается с подсетью моей локальной сети. Моя локальная сеть 172.28.0.0\16 и его маршрут должен быть 10.3.0.1
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.3.0.1 0.0.0.0 UG 0 0 0 eth0
10.3.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
168.63.129.16 10.3.0.1 255.255.255.255 UGH 0 0 0 eth0
169.254.169.254 10.3.0.1 255.255.255.255 UGH 0 0 0 eth0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.28.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-828c78b615e2
172.29.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-adff3a5cad70
Я пробовал добавить статический маршрут с netplan и применить его - без эффекта - после перезагрузки ВМ просто сбрасывает конфигурацию netplan на значение по умолчанию.
Netplan config по умолчанию:
network:
ethernets:
eth0:
dhcp4: true
dhcp4-overrides:
route-metric: 100
dhcp6: false
match:
driver: hv_netvsc
macaddress: 00:22:48:9a:d1:4e
set-name: eth0
version: 2
У кого-нибудь есть идея, правильно ли я иду?
Спасибо за предложение Jad
Кажется, я действительно был на неправильном пути.
Мне удалось смягчить конфликт с сетью по умолчанию, созданной моей конфигурацией докера.
Исходный файл: docker-compose.yml - это не может быть изменено - вам необходимо создать новый файл:
docker-compose.override.yml
Изменения из файла переопределения объединяются с исходным
Я использовал приведенный ниже файл в файле переопределения, чтобы отойти от 172 -> 173, который открыл мою локальную локальную сеть 172 на GW по умолчанию:
networks:
default:
driver: bridge
ipam:
driver: default
config:
- subnet: 173.28.0.0/16
Затем мне также пришлось удалить старую сеть докеров с помощью:
sudo docker network rm "id-of-nw"
Идентификатор можно получить с помощью комбинации:
sudo docker network ls
и
route
Что ж, это мой первый опыт работы с докером, и я рад, что я выбрался из этой кроличьей норы. Надеюсь, это поможет кому-то сэкономить время
Совершенно верно, похоже, вы пытаетесь работать с правильным файлом. документация согласно https://www.networkinghowtos.com/howto/adding-persistent-static-routes-on-ubuntu-18-04-and-higher-using-netplan/
Я бы предложил ваша конфигурация netplan выглядит примерно так:
network:
ethernets:
eth0:
dhcp4: true
dhcp4-overrides:
route-metric: 100
dhcp6: false
match:
driver: hv_netvsc
macaddress: 00:22:48:9a:d1:4e
set-name: eth0
routes:
- to: 172.28.0.0/16
via: 10.3.0.1
version: 2