Allow hotplug eth0 что значит
Суть в том, что в дебиане после установки зачастую в /etc/network/interfaces есть только строка allow-hotplug, но нет auto, поэтому есть проблемы с получением адреса по dhcp, сеть гарантированно не поднимается после service networking restart и нужно делать принудительно dhclient eth0
if eth0 is allow-hotplug but not auto it will be started at boot when the hardware is found, or when the hardware is attached (eg USB) but not when /etc/init.d/networking is run, which only calls ifup -a.
http://forums.debian.net/viewtopic.php?f=5&t=47649
allow-hotplug говорит о том что этот интерфейс запускается не через /etc/init.d/networking а через что-то другое. если Вы хотите управлять интерфейсами через скрипт /etc/init.d/networking — замените allow-hotplug на auto
http://ru-nix.livejournal.com/18890.html
Насколько я понимаю, allow-hotplug — применить настройки при обнаружении устройства (разово), а auto — при поднятии интерфейса. Поэтому настройка фаервола и статики лучше делается через allow-hotplug, а dhcp через auto. Но я могу ошибаться.
И на всякий случай из ЖЖ блок кода с примерами автонастройки фаервола и статики.
Пример /etc/network/interfaces: auto lo iface lo inet loopback pre-up /sbin/iptables-restore < /var/lib/iptables/rules allow-hotplug eth1 iface eth1 inet static address IP адресс провайдера netmask 255.255.255.X hwaddress ether 00:E0:4C:A2:C4:48 network Х.Х.Х.0 broadcast Х.Х.Х.255 gateway Х.Х.Х.Х dns-nameservers Х.Х.Х.X Х.Х.Х.Х up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.17.254 eth0 auto eth1 iface eth0 inet static address 192.168.Х.Х netmask 255.255.255.0 up route add -net 10.0.10.0 netmask 255.255.255.0 gw 10.0.0.1 dev $IFACE up route add -net 10.0.20.0 netmask 255.255.255.0 gw 10.0.0.1 dev $IFACE up echo Interface $IFACE going up | /usr/bin/logger -t ifup down echo Interface $IFACE going down | /usr/bin/logger -t ifdown auto eth0
Установка
Для Debian 9 (stretch) нужно ставить пакет net-tools :
apt install net-tools
Скорость
ethtool eth0
Отключение IPv6
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1
Для отдельных интерфейсов:
net.ipv6.conf.lo.disable_ipv6 = 1 net.ipv6.conf.eth0.disable_ipv6 = 1
sysctl -p
Также нужно перезапустить нужные службы или перезагрузить систему.
Настройка на статический IP-адрес
auto eth0 iface eth0 inet static address 10.0.0.100 netmask 255.255.255.0 gateway 10.0.0.1 dns-search example.com dns-nameservers 192.168.3.45 192.168.8.10
Псевдоним (alias)
auto eth0:1 iface eth0:1 inet static address 10.56.2.1 netmask 255.255.255.0 network 10.56.2.0 broadcast 10.56.2.255
Добавление псевдонима «на ходу»
ifconfig eth0:1 10.56.2.1 netmask 255.255.255.255 up
Удаление, изменение имени сетевого интерфейса
При замене, добавлении сетевой карты или установке диска с системой в другой компьютер возникает необходимость изменения параметров сетевой карты.
Нужно внести изменения в файл /etc/udev/rules.d/70-persistent-net.rules
Описание работы с udev.
DHCP
auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet dhcp
Команда для получения адреса
dhclient интерфейс -v
Пример для интерфейса eth0
dhclient eth0 -v
Маршрутизация
Маршрут по умолчанию
route add default gw 10.0.0.1
Добавление маршрута сети
route add -net 10.56.2.0 netmask 255.255.255.0 gw 10.0.0.1
Добавление маршрута к сети 10.56.2.0 по маске 255.255.255.0 через шлюз 10.0.0.1
Пример скрипта который настраивает маршрутизацию
#!/bin/sh - route add -net 10.56.2.0 netmask 255.255.255.0 gw 10.0.0.1 route add default gw 10.56.0.1
Пример постоянного маршрута
up route add -net 10.56.2.0 netmask 255.255.255.0 gw 10.0.0.1 down route del -net 10.56.2.0 netmask 255.255.255.0 gw 10.0.0.1
IP Forwarding
По умолчанию система не выполняет маршрутизацию проходящих пакетов.
Чтобы ее включить (превратить сервер в маршрутизатор) необходимо установить переменную ядра:
sysctl net.ipv4.ip_forward=1
Чтобы это значение сохранилось после перезагрузки нужно добавить в файл /etc/sysctl.conf :
net.ipv4.ip_forward=1
sysctl -p
Перечитать настройки
Перезапуск всех сетевых интерфейсов:
#!/bin/bash ( ifdown -a ; ifup -a )&
Перезапустить настройки
service networking restart
Перезагрузить настройки
Эту команду удобно использовать для перезагрузки Туннеля IPIP
service networking reload
Текущий шлюз по умолчанию (default gateway)
netstat -nr
Список открытых соединений
netstat -an | grep LISTEN
В состоянии TIME_WAIT :
netstat -an | grep TIME_WAIT
Intel Network Device and Driver Information Utility for Linux
/etc/network/interfaces - difference between auto and allow-hotplug
I am running Debian 9.13. I tried to check what is the difference between auto eth1 and allow-hotplug eth1 in /etc/network/interfaces . I have eth1 networking interface connected via USB . I tried rebooting, running systemctl restart networking and plugging/unplugging and it seems that main difference between allow-hotplug and auto is that if interface is marked as auto , command systemctl restart networking fails when eth1 is not connected. This leads to the conclusion that allow-hotplug is in fact preferable in all cases maybe except situation where I know that interface won't go away (lo, built-in interfaces). Is it correct? Is there any other difference?
asked Mar 26, 2021 at 14:55
Jędrzej Dudkiewicz Jędrzej Dudkiewicz
203 1 1 gold badge 2 2 silver badges 6 6 bronze badges
2 Answers 2
I will amend answer with one more very important note. If you use special interfaces, like bonding (trunk) or network bridge, avoid adding allow-hotplug to their configuration inside /etc/networking file, always use auto .
auto brings them on boot, but allow-hotplug can start messing things around during OS runtime (after initial configuration), like remove static ip configuration, reset interface, setting ip auto-configuration, thus resulting in self assigned ip like 169.254.240.1/16.
allow-hotplug basically means for OS: this interfaces is dynamic, manage it on various condition changes.
auto basically is telling to OS: bing up this interface with provided configuration during boot time or interface link up event.
Allow hotplug eth0 что значит
Если вы забыли IP адрес устройства, или неправильно ввели его при настройке, и веб-интерфейс больше недоступен, настройки можно изменить вручную.
Отредактируйте файл конфигурации /etc/network/interfaces. Например, так:
$ sudo nano /etc/network/interfaces
И измените в нем:
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
gateway 192.168.0.254
dns-nameservers 8.8.8.8 8.8.8.4
pre-up iptables-restore < /etc/iptables .rules
iface eth0 inet static - указывает, что интерфейс ( iface eth0 ) находится в диапазоне адресов IPv4 ( inet ) со статическим ip ( static );
address 192.168.0.1 - указывает, что IP-адрес (address) нашей сетевой карты 192.168.0.1;
netmask 255.255.255.0 - указывает, что наша маска подсети (netmask) имеет значение 255.255.255.0;
gateway 192.168.0.254 - адрес шлюза ( gateway ) по умолчанию 192.168.0.254;
auto eth0 - указывает системе, что интерфейс eth0 необходимо включать автоматически при загрузке системы с вышеуказанными параметрами.
dns-nameservers 8.8.8.8 8.8.8.4 - DNS сервера, используемые системой
Сохраните файл и закройте редактор. В данном примере (редактор nano) - нажмите Ctrl+X, затем Y, убедитесь, что «Имя файла для записи» - /etc/network/interfaces и нажмите Enter.
Перезагрузите устройство для применения изменений. Сделать это можно, например, командой sudo init 6.
После успешной перенастройки, на указанном IP адресе должен быть доступен веб-интерфейс системы. В данном случае по адресу https://192.168.0.1
Нужно ввести логин RutokenVpn и пароль RutokenVpn ( если вы его не меняли) и еще раз произвести настройку сети из WEB-интерфейса.
- Нет меток