Сценарий для создания моста macvlan на хосте не работает, если его не запустить дважды

В дополнение к другим ответам, вы обычно можете сбросить размер по умолчанию с помощью комбинации клавиш Ctrl 0

1
26.07.2017, 07:21
2 ответа

Информация, подробно описанная в последнем обновлении вопроса, дала мне представление о том, в чем заключается проблема.

У меня было включено dhcpcd.serviceдля всех интерфейсов. Я попытался отключить его и включить только для enp10s0, и это сработало.

Так:

systemctl disable dhcpcd
systemctl enable dhcpcd@enp10s0

и вуаля.

0
28.01.2020, 00:51

У меня также были проблемы со сценарием. Мне не пришлось делать это дважды. Через минуту или около того все снова заработало. Но это все равно раздражало. Я решил, что это делает ненужные изменения маршрутизации. Нет никаких причин, по которым нормальный трафик от хоста не должен использовать физический интерфейс. Вам нужно использовать macvlan только для доступа к вашим виртуальным машинам. По этой причине единственные изменения маршрутизации, которые вам действительно нужны, это

ip route flush dev $MACVLN

ip route add $VMHOST dev $MACVLN metric 0

На тот момент у меня больше не было никаких проблем.

Также ничего не стоит, по крайней мере, на Centos 7, /sbin/ifup -local запускается systemctl перезапуском сети в конце запуска интерфейса. Таким образом, вы можете поместить сценарий туда, хотя он должен начинаться примерно так, поскольку вы не хотите запускать его при появлении других интерфейсов.

если ! тест "$1" = "em1"; тогда выход 0 фи

Вам, вероятно, также не нужен цикл проверки связи, когда он /sbin/ifup -локальный. На самом деле это опасно, поскольку это бесконечный цикл, поэтому, если есть какая-то проблема с сетью, система может не решить это как часть запуска.

0
28.01.2020, 00:51

Теги

Похожие вопросы