У меня есть портативное устройство, которому иногда требуется подключение к Интернету (для обновления), но в основном оно будет использоваться напрямую с ноутбуком через кабель Ethernet. Я хочу, чтобы мои пользователи получали преимущества Plug and Play от DHCP IP при подключении к маршрутизатору, но при этом могли подключаться к устройству, когда сервер DHCP не задействован.
Я в основном хочу это сделать, но с помощью systemd-networkd:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth0:0
iface eth0:0 inet static
address 192.168.0.130
netmask 255.255.255.0
Как мне добиться этого с помощью systemd-networkd и есть ли лучший способ добиться того же результата?
Вы можете включить DHCP на сетевом интерфейсе, а также установить дополнительные адреса IPv4 / IPv6.
Это пример конфигурации: /etc/systemd/network/eth0.network
[Match]
Name=eth0
[Network]
DHCP=yes
[Address]
Address=192.168.0.130/24
Это приводит к:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:8d:c0:32 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.130/24 brd 192.168.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
valid_lft 86357sec preferred_lft 86357sec
inet6 fe80::a00:27ff:fe8d:c04d/64 scope link
valid_lft forever preferred_lft forever
192.168.0.130
статический IPv4, 10.0.2.15
IPv4 от DHCP.
Вы можете настроить dhclient.conf следующим образом:
timeout 10;
lease {
interface "eth0";
fixed-address 10.0.0.10;
option subnet-mask 255.255.255.0;
}
interface "ep0" {
prepend domain-name-servers 10.0.0.1;
}
Это настроит ваш DHCP-сервер на тайм-аут через 10 секунд после того, как он не получит IP-адрес от DHCP-сервера, и предоставит адрес 10.0.0.10 в сети / 24. Вы также можете установить DNS-серверы в конфигурации. Вот ссылка на страницу руководства, откуда я получил эту конфигурацию
http://www.freebsd.org/cgi/man.cgi?query=dhclient.conf&sektion=5&n=1