перезагрузите статический IP Ubuntu 16


10

Я использую Ubuntu Server 16.04 и настраиваю некоторые сетевые интерфейсы, я хочу перезагрузить статический IP после изменения его адреса в / etc / network / interfaces без перезагрузки:

auto ens6
iface ens6 inet static
        address 192.168.0.41
        netmask 255.255.255.0
        broadcast 192.168.0.255

Я попробовал следующее:

sudo systemctl restart networking
sudo ifconfig ens6 down (and afterwards up)
sudo ifdown ens6 (and afterwards up)

и попробовал несколько комбинаций этих команд,

Тем не менее, если я изменю свой «адрес» в / etc / network / interfaces, он будет обновлен (в ifconfig) только после перезагрузки компьютера

Как правильно выполнить это действие без перезагрузки?

РЕДАКТИРОВАТЬ - пробовал это также из-за комментариев

sudo /etc/init.d/networking restart

1
Вы пытались sudo /etc/init.d/networking restartперезагрузить сеть?
Терренс

попробовал сейчас, похоже, что он делает то же самое, что и «systemctl restart network», я все еще получаю тот же IP-адрес при проверке ifconfig
Matan Levy

Хорошо, спасибо за попытку. К сожалению, в данный момент моя система не находится в состоянии, в котором я мог бы провести некоторое тестирование для вас. Я могу провести дополнительное исследование и посмотреть, смогу ли я продублировать проблему и помочь вам решить ее.
Терренс

спасибо, я буду следить за сообщением, сейчас серверы настроены и разрабатываются, так что я могу справиться с перезагрузками, но мне может понадобиться изменить статический IP-адрес когда-нибудь на производстве, и я не могу позволить себе перезагрузку для этого типа действие
Матан Леви

Еще одна вещь, которую вы можете попробовать, и я просто сделал это, когда вы запускаете sudo ifdown ens6попытку, sudo ifup -aчтобы восстановить ее и посмотреть, не изменится ли ваш IP-адрес. Это только для меня.
Терранс

Ответы:


10

Если подход ifdown + ifup не работает, попробуйте:

sudo ifdown <network interface> && sudo ip addr flush <network interface> && sudo ifup <network interface>

3
ip addr flush enp0s3 && systemctl restart networking.service   

Где enp0s3ваше имя сетевой карты.


2

Чтобы изменить IP-адреса без перезагрузки системы, выполните следующие строки для выполнения задачи. Убедитесь, что вы выполнили свои изменения в /etc/network/interfacesфайле, прежде чем выполнять эти шаги:

РЕДАКТИРОВАТЬ:

Вы можете попробовать отключить интеллектуальное именование сети, добавив следующее /etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0"

Затем запустите grubобновление:

sudo update-grub

Перезагрузите систему:

sudo reboot

Сначала отключите интерфейс:

sudo ifdown <network interface>

Затем восстановите все интерфейсы:

sudo ifup -a

Надеюсь это поможет!


это не сработало для меня, я все еще получаю те же результаты на ifconfig (я использую Ubuntu 16.04 LTS)
Матан Леви

@MatanLevy Вы знаете, мне интересно, является ли это фактом, что я не использую прогностические имена для сети. К сожалению, я не уверен на 100%, использует ли серверная версия интеллектуальное именование или нет. Я бегу 16.04.1 LTS.
Терренс

пытался изменить GRUB_CMDLINE_LINUX_DEFAULT и все равно ничего не получилось
Матан Леви

@MatanLevy Извините, я забыл упомянуть, что вам нужно перезагрузить компьютер после изменения этой строки и обновления grub. Ты перезагрузился?
Терренс

@MatanLevy Ну, я сделал больше тестов, и мой работает нормально. Я собираюсь установить серверную версию, чтобы полностью проверить это.
Терренс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.