В дополнение к другим ответам, вы обычно можете сбросить размер по умолчанию с помощью комбинации клавиш Ctrl 0
Информация, подробно описанная в последнем обновлении вопроса, дала мне представление о том, в чем заключается проблема.
У меня было включено dhcpcd.service
для всех интерфейсов. Я попытался отключить его и включить только для enp10s0
, и это сработало.
Так:
systemctl disable dhcpcd
systemctl enable dhcpcd@enp10s0
и вуаля.
У меня также были проблемы со сценарием. Мне не пришлось делать это дважды. Через минуту или около того все снова заработало. Но это все равно раздражало. Я решил, что это делает ненужные изменения маршрутизации. Нет никаких причин, по которым нормальный трафик от хоста не должен использовать физический интерфейс. Вам нужно использовать 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 -локальный. На самом деле это опасно, поскольку это бесконечный цикл, поэтому, если есть какая-то проблема с сетью, система может не решить это как часть запуска.