Static routes
Материал из pNp Wiki
Версия от 11:26, 24 ноября 2017; Andy (обсуждение | вклад)
Содержание
Маршрутизация ip трафика и статические маршруты
Предварительные требования
- Две виртуальная машины с двумя сетевыми интерфейсами в каждой
- Установленные пакеты:
bash-completion
Предварительная настройка сетевых интерфейсов на виртуальных машинах
Настройка параметров ядра
Для настройки статической маршрутизаци, первым шагом следует
разрешить обмен пакетами между сетевыми интерфейсами специальной
настройкой системного параметра. На vm-01
разрешаем обмен пакетами и проверяем установленное значение:
[root@vm-01 ~]# sysctl -a | grep ip_forward
net.ipv4.ip_forward = 0
net.ipv4.ip_forward_use_pmtu = 0
[root@vm-01 ~]# sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
[root@vm-01 ~]# sysctl -a | grep ip_forward
net.ipv4.ip_forward = 1
net.ipv4.ip_forward_use_pmtu = 0
[root@vm-01 ~]#
Для того, что бы изменения применялись после перезагрузки
запишем измененное значение в /etc/sysctl.conf
[root@vm-01 ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
[root@vm-01 ~]# cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
net.ipv4.ip_forward = 1
[root@vm-01 ~]#
Настроим второй сетевой интерфейс данной виртуальной машины:
[root@vm-01 ~]# nmcli connection show
NAME UUID TYPE DEVICE
eth0 89d6addf-2717-4933-ac09-c63936ed5205 802-3-ethernet eth0
eth1 b1b57e4d-26fd-438b-846d-bcdee06aee53 802-3-ethernet --
[root@vm-01 ~]# nmcli connection edit eth1
===| nmcli interactive connection editor |===
Editing existing '802-3-ethernet' connection: 'eth1'
Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.
You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6
nmcli> set ipv4.method manual
nmcli> set ipv4.addresses 192.168.1.1/24
nmcli> set connection.autoconnect
autoconnect autoconnect-priority autoconnect-slaves
nmcli> set connection.autoconnect
no yes
nmcli> set connection.autoconnect yes
nmcli> save
Connection 'eth1' (b1b57e4d-26fd-438b-846d-bcdee06aee53) successfully updated.
nmcli> save persistent
Connection 'eth1' (b1b57e4d-26fd-438b-846d-bcdee06aee53) successfully updated.
nmcli> quit
[root@vm-01 ~]#
Включим интерфейс и проверим его настройки:
[root@vm-01 ~]# nmcli connection up eth1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
[root@vm-01 ~]# nmcli connection show
NAME UUID TYPE DEVICE
eth0 89d6addf-2717-4933-ac09-c63936ed5205 802-3-ethernet eth0
eth1 b1b57e4d-26fd-438b-846d-bcdee06aee53 802-3-ethernet eth1
[root@vm-01 ~]# ip -4 addr show dev eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.1.1/24 brd 192.168.1.255 scope global eth1
valid_lft forever preferred_lft forever
[root@vm-01 ~]#
Настройка второго сетевого интерфейса ens10
, на виртуальной машине vm-02
[root@vm-02 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens3 427963c7-c016-417a-a542-7738fd158922 802-3-ethernet ens3
ens10 d95a3145-91f8-4e9d-8219-975da848f2e7 802-3-ethernet --
[root@vm-02 ~]# nmcli connection edit ens10
===| nmcli interactive connection editor |===
Editing existing '802-3-ethernet' connection: 'ens10'
Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.
You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, ipv4, ipv6, dcb
nmcli> set ipv4.method manual
nmcli> set ipv4.addresses 192.168.1.2/24
nmcli> save
Connection 'ens10' (d95a3145-91f8-4e9d-8219-975da848f2e7) successfully updated.
nmcli> save persistent
Connection 'ens10' (d95a3145-91f8-4e9d-8219-975da848f2e7) successfully updated.
nmcli> quit
Включаем интерфейс и проверяем настроки:
[root@vm-02 ~]# nmcli connection up ens10
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)
[root@vm-02 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens3 427963c7-c016-417a-a542-7738fd158922 802-3-ethernet ens3
ens10 d95a3145-91f8-4e9d-8219-975da848f2e7 802-3-ethernet ens10
[root@vm-02 ~]# ip -4 addr show ens10
3: ens10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.1.2/24 brd 192.168.1.255 scope global ens10
valid_lft forever preferred_lft forever
[root@vm-02 ~]#
Теперь следует убедиться, что между двумя виртуальными машинами, у вторых сетевых интерфейсов существует связанность:
[root@vm-02 ~]# ping -c 3 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.927 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.776 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.733 ms
--- 192.168.1.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.733/0.812/0.927/0.083 ms
[root@vm-02 ~]#