You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

92 lines
3.3 KiB
Markdown

# Задание 2
На машине `studX-net1` настройте в подсети `192.168.0.0/24` DHCP сервер в файле `/etc/systemd/network/ens18.network`. На другой машине `studX-net2` настройте получение IP адреса по DHCP. Проверьте, что машины видят друг друга.
0. Узнайте статус сервиса `systemd-networkd`.
```
# systemctl status systemd-networkd
```
1. Активируйте `systemd-networkd`, если он не активирован (disabled).
```
# systemctl enable systemd-networkd
```
2. Запустите systemd-networkd, если он не запущен (inactive, dead).
```
# systemctl start systemd-networkd
```
3. Определите имя настраиваемого интерфейса (не loopback).
```
# ip link
```
4. Для настройки интерфейса `ens18` машин `stud1-net1` и `stud1-net2` создайте
или отредактируйте в каждой` /etc/systemd/network/ens18.network`.
конфигурация `ens18.network` машины `stud1-net1` с DHCP сервером.
```
[Match]
Name=ens18
[Network]
Address=192.168.0.2/24
DHCPServer=yes
[DHCPServer]
EmitDNS=yes
DNS=1.1.1.1
EmitRouter=yes
Router=192.168.0.1
PoolOffset=1
PoolSize=252
```
Такой DHCP сервер будет выдавать новым устройствам IP из диапазона 192.168.0.[3-255], адрес шлюза и DNS сервер. При этом, сам машина с DHCP сервером не будет иметь доступ в интернет (у неё не будет шлюза и DNS адреса).
конфигурация `ens18.network` машины `stud1-net2`, которая получает адрес от DHCP сервера.
```
[Match]
Name=ens18
[Network]
DHCP=yes
```
5. Перечитайте конфигурацию сети на обеих машинах.
```
# networkctl reload
```
6. На машине `stud1-net2` определите выданный DHCP сервером ip адрес для интерфейса `ens18`.
```
ip a
```
Срок, на который выдан адрес можно посмотреть командой `ip` в поле `valid_lft`:
```
ip -4 address show ens18
```
а в логах увидеть факт получения адреса
```
journalctl --unit=systemd-networkd
```
После конфигурации на обеих машинах проверьте их взаимную доступность по сети.
```
stud@stud1-net2$ ping 192.168.0.2
stud@stud1-net1$ ping 192.168.0.X
```
7. В случае проблемы, проверьте, что `systemd-networkd` запущен и в его логах нет ошибок на обоих машинах.
```
# systemctl status systemd-networkd
```
Изучите логи модуля `systemd-networkd` на ошибки
```
journalctl --unit=systemd-networkd
```
Обратитесь к секциям `[Network]`, `[DHCPServer]` в странице мануала `systemd.network`. Для быстрого поиска можете использовать `/`, по аналогии с поиском в vim. Проверьте настройки `ens18.network` на ошибки.