Настройка доступа к Интернет, на маршрутизаторе ISP

Задание:

  • Настройте адресацию на интерфейсах:
    • Интерфейс, подключенный к магистральному провайдеру, получает адрес по DHCP
    • Настройте маршрут по умолчанию, если это необходимо
    • Настройте интерфейс, в сторону HQ-RTR, интерфейс подключен к сети 172.16.1.0/28
    • Настройте интерфейс, в сторону BR-RTR, интерфейс подключен к сети 172.16.2.0/28
    • На ISP настройте динамическую сетевую трансляцию портов для доступа к сети Интернет HQ-RTR и BR-RTR.

Вариант реализации:

ISP:

  • Просмотр существующих интерфейсов выполняется командой ip a

    • где:
      • ens19 — интерфейс подключённый к магистральному провайдеру;

  • Для того чтобы интерфейс, подключенный к магистральному провайдеру, получал адрес по DHCP:
    • необходимо в конфигурационном файле, расположенном по пути /etc/net/ifaces/<ИМЯ_ИНТЕРФЕЙСА>/options
    • в параметре BOOTPROTO указать значение dhcp:

  • Для применения настроек, необходимо перезагрузить службу network
systemctl restart network
  • Проверить:
    • получение всех параметров по DHCP;
    • доступ в сеть Интернет.

  • Просмотр существующих интерфейсов выполняется командой ip a

    • где:
      • ens20 — интерфейс подключённый к HQ-RTR;
      • ens21 — интерфейс подключённый к BR-RTR.

  • Создадим директории в /etc/net/ifaces/ для интерфейсов ens20 и ens21:
mkdir /etc/net/ifaces/ens20
mkdir /etc/net/ifaces/ens21
    • Результат:

  • Для каждого интерфейса, необходимо в директории /etc/net/ifaces/<ИМЯ_ИНТЕРФЕЙСА>/ создать конфигурационный файл options
  • с минимально необходимыми параметрами, а именно:
    • TYPE=eth указывает на тип интерфейса – ethernet,
    • BOOTPROTO=static означает, что настройка статических параметров
echo "TYPE=eth" > /etc/net/ifaces/ens20/options
echo "BOOTPROTO=static" >> /etc/net/ifaces/ens20/options
cp /etc/net/ifaces/ens20/options /etc/net/ifaces/ens21/options
    • Результат:

  • Далее опишем содержимое конфигурационного файла ipv4address для каждого интерфейса:
    • в сторону HQ-RTR:
echo "172.16.1.1/28" > /etc/net/ifaces/ens20/ipv4address
    • в сторону BR-RTR:
echo "172.16.2.1/28" > /etc/net/ifaces/ens21/ipv4address
  • Для применения настроек, необходимо перезагрузить службу network
systemctl restart network
  • Проверить:

  • Для того чтобы устройство ISP могло пересылать пакеты с интерфейса на интерфейс, необходимо включить пересылку пакетов (forwarding)
    • Для этого следует в конфигурационном файле /etc/net/sysctl.conf в параметре net.ipv4.ip_forward = 0 заменить значение с 0 на 1

  • Для применения настроек, необходимо перезагрузить службу network
systemctl restart network
  • Проверить:

  • Для динамической сетевой трансляции можно использовать iptables.
  • В случае использования в качестве ОС на ВМ ISP «Альт Jeos» – пакет iptables необходимо установить:
    • предварительно обновив список пакетов с помощью команды apt-get update
apt-get update && apt-get install -y iptables
  • Реализацию сетевой трансляции адресов с помощью iptables можно выполнить одной командой:
    • где, ens19 внешний интерфейс, подключённый к магистральному провайдеру
    • также реализуем трансляцию адресов только из конкретных сетей HQ-RTR и BR-RTR
iptables –t nat –A POSTROUTING -s 172.16.1.0/28 –o ens19 –j MASQUERADE
iptables –t nat –A POSTROUTING -s 172.16.2.0/28 –o ens19 –j MASQUERADE
  • Сохраняем правила iptables на постоянной основе (после перезагрузки):
iptables-save >> /etc/sysconfig/iptables
  • Включаем и добавляем в автозагрузку службу iptables:
systemctl enable --now iptables
  • Проверить, наличие правила в iptables, а именно в таблице nat, в цепочек POSTROUTING:

HQ-RTR:

  • Создаём интерфейс с именем isp (произвольное имя) и назначаем на него IP-адрес согласно заполненной таблице адресации:
hq-rtr>enable                   
hq-rtr#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
hq-rtr(config)#interface isp
hq-rtr(config-if)#description "ISP"                   
hq-rtr(config-if)#ip address 172.16.1.2/28
hq-rtr(config-if)#exit
hq-rtr(config)#
  • Также зададим сразу же маршрут по умолчанию, указав в качестве шлюза по умолчанию IP-адрес ISP:
hq-rtr(config)#ip route 0.0.0.0/0 172.16.1.1
  • Посмотреть физические порты можно при помощи следующей команды:
hq-rtr#show port brief
    • где:
      • te0 — порт в сторону ISP;
      • te1 — порт в сторону локальной сети офиса HQ (HQ-Net, виртуальный коммутатор HQ-SW);

  • В режиме конфигурирования порта создадим service-instance с произвольным именем:
    • укажем (инкапсулировать) что будет обрабатываться не тегированный трафик (untagget);
    • укажем в какой интерфейс (ранее созданный с именем isp) нужно отправить обработанные кадры;
hq-rtr(config)#port te0
hq-rtr(config-port)#service-instance te0/isp
hq-rtr(config-service-instance)#encapsulation untagged 
hq-rtr(config-service-instance)#connect ip interface isp 

2025-09-04 05:45:04      INFO      Interface isp changed state to up
hq-rtr(config-service-instance)#exit
hq-rtr(config-port)#exit
hq-rtr(config)#write memory
Building configuration...

hq-rtr(config)#
  • Проверить, назначенный IP-адрес на интерфейс:
hq-rtr#show ip interface brief 
  • Проверить, назначенный маршрут по умолчанию:
hq-rtr#show ip route static
    • Результат:

  • Проверить доступность шлюза и доступ в сеть Интернет:

BR-RTR:

  • Аналогично HQ-RTR
br-rtr>enable 
br-rtr#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
br-rtr(config)#interface isp
br-rtr(config-if)#description "ISP"
br-rtr(config-if)#ip address 172.16.2.2/28
br-rtr(config-if)#exit
br-rtr(config)#ip route 0.0.0.0/0 172.16.2.1
br-rtr(config)#port te0
br-rtr(config-port)#service-instance te0/isp
br-rtr(config-service-instance)#encapsulation untagged 
br-rtr(config-service-instance)#connect ip interface isp 

2025-09-04 05:48:19      INFO      Interface isp changed state to up
br-rtr(config-service-instance)#exit
br-rtr(config-port)#exit
br-rtr(config)#write memory
Building configuration...
                  
br-rtr(config)#
  • Ожидаемый результат: