На моей работе у нас есть некоторые тестовые машины, на которых мы запускаем скрипты через ssh. Во время теста мы хотим только иметь машины, получают доступ к локальной сети посредством их соединения Ethernet, но затем хотел бы сделать, чтобы они смогли получить доступ к Интернету через тот же интерфейс для очистки и передачи данных после.
Мы можем сделать это путем движения в каждую машину и переключения "Use this connection only for resources on its network"
опция в network manager
> IPv4 options
> routes menu
, но было бы намного более удобно смочь добавить это в наш сценарий тестирования.
Я могу найти некоторые подобные вопросы, которые имеют отношение к соединениям VPN, но я хочу удостовериться, что я обрабатываю маршрутизацию правильно для обычного интерфейса Ethernet. Спасибо за любую справку.
Можно использовать nmcli
, чтобы сделать это, ключ ipv4.never-default
:
nmcli connection modify enp3s0 ipv4.never-default true
enp3s0
с Вашим собственным именем подключения. false
или true
для переключения между этой конфигурацией. Если Вы отредактировали бы файлы непосредственно, можно сделать это также.
Перешли к /etc/NetworkManager/system-connections/
каталог и находят соединение, которое Вы хотите. Откройте сеть с помощью sudo nano MyNetwork
.
, После того как у Вас есть открытый файл, ищите эти [ipv4]
раздел и добавьте never-default=true
, как так:
[ipv4]
dns-search=
method=auto
never-default=true
, Если Вы также хотите, чтобы маршруты IPv6 были обработаны таким же образом, добавьте ту же строку к эти [ipv6]
раздел:
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
never-default=true
Сохраняют и выходят из редактора с Ctrl + X и затем перезапускают NetworkManager с ниже, чтобы гарантировать, что изменения взяты:
sudo systemctl restart NetworkManager.service
Снова соединяются с сетью, и она должна работать просто великолепно.
Можно удалить маршрут по умолчанию, и они будут доступны только от подсети ЛВС.
ip route delete default
И добавить его назад:
ip route add default via <you_gateway_ip_address>