Перейти к содержанию

HQ RTR

Настройки сети

/etc/net/sysctl.conf
net.ipv4.ip_forward = 1

Интерфейсы

ISP:

/etc/net/ifaces/enp7s1/options
BOOTPROTO=static
TYPE=eth
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
/etc/net/ifaces/enp7s1/ipv4address
172.16.1.2/28
/etc/net/ifaces/enp7s1/ipv4route
default via 172.16.1.1

HQ-SRV + HQ-CLI + VLAN 999:

/etc/net/ifaces/enp7s2/options
BOOTPROTO=static
TYPE=eth
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no

enp7s2.100 (hq-srv):

/etc/net/ifaces/enp7s2.100/options
BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=100
HOST=enp7s2
/etc/net/ifaces/enp7s2.100/ipv4address
192.168.1.1/27

enp7s2.200 (hq-cli):

/etc/net/ifaces/enp7s2.200/options
BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=200
HOST=enp7s2
/etc/net/ifaces/enp7s2.200/ipv4address
192.168.2.1/28

enp7s2.999 (vlan 999):

/etc/net/ifaces/enp7s2.999/options
BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=999
HOST=enp7s2
/etc/net/ifaces/enp7s2.999/ipv4address
192.168.9.1/29

Перезапускаем службу:

systemctl restart network

IPTables

iptables -t nat -A POSTROUTING -o enp7s1 -j MASQUERADE
iptables-save >> /etc/sysconfig/iptables
systemctl enable --now iptables

Интерфейс

Необходимо заменить интерфейс enp7s1 на тот, что идёт на ISP.

Пакет

На некоторых дистрибутивах может потребоваться установить пакет iptables.

apt-get update && apt-get install -y iptables

DHCP

Копируем стандартную конфигурацию:

cp /etc/dhcp/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

Приводим к следующему виду:

/etc/dhcp/dhcpd.conf
ddns-update-style none;

subnet 192.168.2.0 netmask 255.255.255.240 {
        option routers                  192.168.2.1;
        option subnet-mask              255.255.255.240;

        option nis-domain               "";
        option domain-name              "au-team.irpo";
        option domain-name-servers      192.168.1.2;

        range dynamic-bootp 192.168.2.2 192.168.2.15;

        default-lease-time 21600;
        max-lease-time 43200;
}

Указываем название интерфейса, который будет слушать сервер DHCP:

/etc/sysconfig/dhcpd
DHCPARGS=enp7s2.200

Включаем службу:

systemctl enable --now dhcpd

GRE + OSPF

/etc/net/ifaces/tunnel1/options
TYPE=iptun
CONFIG_IPV4=yes
DISABLED=no
TUNTYPE=gre
TUNLOCAL=172.16.1.2
TUNREMOTE=172.16.2.2
TUNTTL=32
TUNOPTIONS='ttl 32'
TUNMTU=1426
HOST=enp7s1
/etc/net/ifaces/tunnel1/ipv4address
192.168.4.1/28

Перезапускаем службу:

systemctl restart network

Включаем под-службу ospfd:

/etc/frr/daemons
ospfd=yes

Включаем службу:

systemctl enable --now frr

Входим в интерактивный режим. Команда vtysh:

vtysh
conf t
hostname hq-rtr.au-team.irpo
router ospf
passive-interface default
network 192.168.1.0/27 area 0
network 192.168.2.0/28 area 0
network 192.168.9.0/29 area 0
network 192.168.4.0/28 area 0
exit
interface tunnel1
ip ospf authentication
ip ospf authentication-key aboba
no ip ospf passive
end
wr mem
exit

OSPF

Никогда не добавляйте сеть 172.16.0.0 (ISP) в OSPF — это ошибка.

Перезапускаем службу:

systemctl restart frr

Users

adduser net_admin

Смена пароля:

echo 'P@ssw0rd' | passwd net_admin --stdin

Утилита потребует ввести новый пароль и подтвердить (повторить) его.

Sudo

/etc/sudoers
##
## User privilege access
##

net_admin ALL=(ALL) NOPASSWD: ALL

Добавить пользователя net_admin в группу wheel:

gpasswd -a net_admin wheel

Альтернативный способ. Отредактировать /etc/group подобным образом:

/etc/group
wheel:x:10:root,user,net_admin

Hostname

hostnamectl hostname hq-rtr.au-team.irpo

Сессия

На Linux команда применяется сразу, но визуально увидеть можно только после повторного открытия сессии shell. Команда bash или же просто ре-логин в пользователя.

Timezone

Пакет

На некоторых дистрибутивах может потребоваться установить пакет tzdata.

apt-get update && apt-get install -y tzdata

timedatectl set-timezone Europe/Moscow