Как настроить сервер Ubuntu на маршрутизатор для двух частных сетей в моей сети и выполнить DHCP-адресацию?

Я хочу, чтобы мой сервер Ubuntu был маршрутизатором для двух частных сетей в моей сети.

Я также хочу, чтобы этот сервер обслуживал DHCP-запросы для частных сетей.

Как настроить сервер Ubuntu 16.04 для этого?

4
задан 16 September 2017 в 20:16

3 ответа

ПРИМЕЧАНИЕ. Это необходимо для настройки самой базовой настройки - прямого маршрутизатора для двух или более подсетей без ограничения трафика кросс-подсети. Это можно изменить с помощью правил брандмауэра, чтобы лучше обрабатывать управление отдельными функциями или сетевым доступом через подсети или outboud в Интернете, однако это выходит за рамки этой базовой «настроенной» пары Q / A.

Вам понадобится сервер Ubuntu с 3 сетевыми интерфейсами, конечно, один для интерфейса, подключенного к Интернету, и два частных сетевых интерфейса.

После этого просто следуйте этому руководству для установки этого сервера в качестве маршрутизатора:

(1) Изменить /etc/sysctl.conf. Найдите и раскомментируйте эту строку:

net.ipv4.ip_forward=1

Как только вы это сделаете, выполните команду sudo sysctl -p, чтобы перезагрузить параметры системного ядра. Это позволяет ядру Ubuntu теперь обслуживать трафик между подсетями и VLAN через IPv4.

(2) Измените поле /etc/network/interfaces маршрутизатора, чтобы настроить статический IP-адрес на интерфейсах, обслуживающих частные сети. В этом примере я знаю, что интерфейсы являются ens37 и ens38, а ens33 является основным подключенным к Интернету интерфейсом на моем ящике. Я оставляю ens33 один, но добавляет строфы конфигурации ens37 и ens38:

# Private Subnet 1
auto ens37
iface ens37 inet static
    address 10.76.100.1
    netmask 255.255.255.0
    dns-nameservers 8.8.8.8 8.8.4.4

# Private Subnet 2
auto ens38
iface ens38 inet static
    address 10.76.101.1
    netmask 255.255.255.0
    dns-nameservers 8.8.8.8 8.8.4.4

Соответственно настройте сетевые адреса и имена интерфейсов для вашей установки.

** Обратите внимание, что если вы используете VMware Workstation или аналогичные, и у вас есть vmnet# устройства, выбранные для виртуальной машины для этого, убедитесь, что хост-система либо не имеет подключенного к хосту устройства для этого vmnet, либо если if он использует другой адрес, чем .1 в последнем октете в вашем маршрутизаторе.

(3) Установите программное обеспечение сервера DHCP.

sudo apt-get install isc-dhcp-server

Это позволит ящику маршрутизатора обслуживать DHCP-запросы для ваших частных подсетей.

(4) Сначала скопируйте DHCP-сервер config, который был установлен автоматически в файл резервной копии.

sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.dist

(5) Теперь мы делаем этот оригинальный файл пустым, чтобы мы могли применить наш конфиг.

echo "" | sudo tee /etc/dhcp/dhcpd.conf

( 6) Теперь давайте воспользуемся нашей конфигурацией:

# DHCP Server config

# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)
ddns-update-style none;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;

# Specify the domain name servers to specify for each subnet.
option domain-name-servers 8.8.8.8;
option domain-name-servers 8.8.4.4;


# DHCP Subnet configurations

# Subnet 1 - ens37
subnet 10.76.100.0 netmask 255.255.255.0 {
  default-lease-time 86400;
  max-lease-time 86400;

  range 10.76.100.10 10.76.100.200;
  option routers 10.76.100.1;
  option subnet-mask 255.255.255.0;
  option broadcast-address 10.76.100.255;
}

# Subnet 2 - ens38
subnet 10.76.101.0 netmask 255.255.255.0 {
  default-lease-time 86400;
  max-lease-time 86400;

  range 10.76.101.10 10.76.101.200;
  option routers 10.76.101.1;
  option subnet-mask 255.255.255.0;
  option broadcast-address 10.76.101.255;
}

Отрегулируйте эту конфигурацию в соответствии с вашими потребностями и обязательно обновите опцию «routers» на основе любого IP-адреса, указанного выше в настройках вашей сети.

После того, как вы закончите настройку файла по мере необходимости, сохраните файл.

(7) Нам нужно сообщить системе, какие интерфейсы нужно заботиться. Измените /etc/default/isc-dhcp-server и укажите свои частные сетевые интерфейсы (в моем случае, ens37 и 38) в строке INTERFACES="", чтобы он выглядел так:

INTERFACES="ens37 ens38"

Сохраните файл.

(7) И теперь правила брандмауэра. Нам нужно сообщить системе, что она может работать как маршрутизатор, и настроить соответствующие элементы управления и наборы правил, чтобы это произошло. Я предполагаю, что здесь вы не настроили брандмауэр, потому что я описываю настройку с нуля.

Если вы уже установили ufw на этом компьютере, запустите sudo ufw disable и затем удалите ufw с помощью sudo apt-get remove ufw. UFW не работает для того, что нам нужно, нам нужна расширенная мощность iptables напрямую. Для большинства маршрутизаторов мы не должны использовать UFW вообще.

Убедитесь, что мы знаем имя интерфейса для вашего сетевого интерфейса, подключенного к Интернету. В моей тестовой системе это было ens33, но в вашей системе это может быть разным. Удостоверьтесь, что мы также знаем сетевые интерфейсы для наших частных сетей, для которых мы будем работать; они нам тоже нужны. Настройте свой iptables следующим образом следующими командами. Обратите внимание на мои комментарии:

# Accept localhost traffic (local traffic to the system itself)
sudo iptables -A INPUT -i lo -j ACCEPT

# Accept all traffic related to established connections
sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

# Drop traffic coming from the Internet into our Internet-connected interface (except for traffic related to other established connections)
# Update this to match the interface name of your Internet-connected interface.
sudo iptables -A INPUT -i ens33 -j DROP

# Accept traffic inbound from the local subnets we are acting as a router for.
# CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP!
sudo iptables -A INPUT -i ens37 -j ACCEPT
sudo iptables -A INPUT -i ens38 -j ACCEPT

# Since we don't want to have our system completely open to the Internet, we need
# to drop all other traffic coming to our network.  This way, we can prevent the
# Internet at large from accessing our network directly from the Internet.
sudo iptables -A INPUT -j DROP

# Add rules to accept forwarding on the interfaces we are doing routing for.
# CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP!
sudo iptables -A FORWARD -i ens37 -j ACCEPT
sudo iptables -A FORWARD -o ens37 -j ACCEPT
sudo iptables -A FORWARD -i ens38 -j ACCEPT
sudo iptables -A FORWARD -o ens38 -j ACCEPT

# Add rules to the NAT table to allow us to actually let traffic on the interfaces
# which we are doing routing for go out to the Internet masquerade as our Internet-
# connected interface.
#
# ADJUST THE IP RANGES HERE TO MATCH THE IP RANGES AND THE SUBNETS FOR YOUR OWN
# ENVIRONMENT!  Remember that the IP address of 10.76.100.1 for the router, and
# the netmask 255.255.255.0 is equal to the network range/CIDR of 10.76.100.0/24
# for the purposes of these rules.
sudo iptables -t nat -A POSTROUTING -s 10.76.100.0/24 ! -d 10.76.100.0/24 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -s 10.76.101.0/24 ! -d 10.76.101.0/24 -j MASQUERADE

(8) Установите пакет iptables-persistent, который позволит нам запомнить наши правила iptables и загрузить их при перезагрузке.

[ f9]

Когда он просит сохранить существующие правила, выберите «Да» для IPv4 и IPv6.

(9) Проверьте это! Настройте еще одну систему в одной из приватных сетей, которую вы настроили, и убедитесь, что она настроена на то, что она может связываться с Интернетом и имеет настроенный DHCP-адрес в пределах частных подсетей, установленных выше!

3
ответ дан 22 May 2018 в 18:24
  • 1
    Для вашей линии ICMP это не должно быть sudo iptables -A INPUT -p ICMP -i ens33 -j DROP? Вы оставили висящее предложение For most routers we should not be using? Возможно, ufw отсутствует? – Doug Smythies 16 September 2017 в 21:10
  • 2
    @DougSmythies Технически да, но нам не нужно иметь такое конкретное правило, если мы явно разрешаем трафику внутренних интерфейсов сначала добираться до ящика маршрутизатора, а затем просто отбрасываем любой другой, иначе непревзойденный трафик, включая ICMP-пинг, и неавторизованный сканирование портов. Теперь, если мы хотим блокировать ICMP везде, кроме одного интерфейса или IP, то да, мы могли бы технически добавить этот дополнительный шаг и сделать отдельные наборы правил. Вышеприведенное, однако, работает как основной набор правил. – Thomas Ward♦ 16 September 2017 в 21:14
  • 3
    Тогда мое предложение состоит в том, чтобы удалить комментарий ICMP и изменить его на «DROP что-нибудь еще, входящее из Интернета». или похожие. Я понимаю, сервер DHCP знает, какая подсеть основана на том интерфейсе, на который был отправлен запрос на аренду. Круто. – Doug Smythies 16 September 2017 в 21:28
  • 4
    FWIW, у вас есть возможность перейти к нажатию "edit " и улучшить ситуацию. @DougSmythies Да, он определяет его по подсети IP, которая определяется в конфигурации isc-dhcp-server, которую я включил выше в отдельные разделы подсети. – Thomas Ward♦ 16 September 2017 в 21:33
ПРИМЕЧАНИЕ. Это необходимо для настройки самой базовой настройки - прямого маршрутизатора для двух или более подсетей без ограничения трафика кросс-подсети. Это можно изменить с помощью правил брандмауэра, чтобы лучше обрабатывать управление отдельными функциями или сетевым доступом через подсети или outboud в Интернете, однако это выходит за рамки этой базовой «настроенной» пары Q / A.

Вам понадобится сервер Ubuntu с 3 сетевыми интерфейсами, конечно, один для интерфейса, подключенного к Интернету, и два частных сетевых интерфейса.

После этого просто следуйте этому руководству для установки этого сервера в качестве маршрутизатора:

(1) Изменить /etc/sysctl.conf. Найдите и раскомментируйте эту строку:

net.ipv4.ip_forward=1

Как только вы это сделаете, выполните команду sudo sysctl -p, чтобы перезагрузить параметры системного ядра. Это позволяет ядру Ubuntu теперь обслуживать трафик между подсетями и VLAN через IPv4.

(2) Измените поле /etc/network/interfaces маршрутизатора, чтобы настроить статический IP-адрес на интерфейсах, обслуживающих частные сети. В этом примере я знаю, что интерфейсы являются ens37 и ens38, а ens33 является основным подключенным к Интернету интерфейсом на моем ящике. Я оставляю ens33 один, но добавляет строфы конфигурации ens37 и ens38:

# Private Subnet 1 auto ens37 iface ens37 inet static address 10.76.100.1 netmask 255.255.255.0 dns-nameservers 8.8.8.8 8.8.4.4 # Private Subnet 2 auto ens38 iface ens38 inet static address 10.76.101.1 netmask 255.255.255.0 dns-nameservers 8.8.8.8 8.8.4.4

Соответственно настройте сетевые адреса и имена интерфейсов для вашей установки.

** Обратите внимание, что если вы используете VMware Workstation или аналогичные, и у вас есть vmnet# устройства, выбранные для виртуальной машины для этого, убедитесь, что хост-система либо не имеет подключенного к хосту устройства для этого vmnet, либо если if он использует другой адрес, чем .1 в последнем октете в вашем маршрутизаторе.

(3) Установите программное обеспечение сервера DHCP.

sudo apt-get install isc-dhcp-server

Это позволит ящику маршрутизатора обслуживать DHCP-запросы для ваших частных подсетей.

(4) Сначала скопируйте DHCP-сервер config, который был установлен автоматически в файл резервной копии.

sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.dist

(5) Теперь мы делаем этот оригинальный файл пустым, чтобы мы могли применить наш конфиг.

echo "" | sudo tee /etc/dhcp/dhcpd.conf

( 6) Теперь давайте воспользуемся нашей конфигурацией:

# DHCP Server config # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # Specify the domain name servers to specify for each subnet. option domain-name-servers 8.8.8.8; option domain-name-servers 8.8.4.4; # DHCP Subnet configurations # Subnet 1 - ens37 subnet 10.76.100.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; range 10.76.100.10 10.76.100.200; option routers 10.76.100.1; option subnet-mask 255.255.255.0; option broadcast-address 10.76.100.255; } # Subnet 2 - ens38 subnet 10.76.101.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; range 10.76.101.10 10.76.101.200; option routers 10.76.101.1; option subnet-mask 255.255.255.0; option broadcast-address 10.76.101.255; }

Отрегулируйте эту конфигурацию в соответствии с вашими потребностями и обязательно обновите опцию «routers» на основе любого IP-адреса, указанного выше в настройках вашей сети.

После того, как вы закончите настройку файла по мере необходимости, сохраните файл.

(7) Нам нужно сообщить системе, какие интерфейсы нужно заботиться. Измените /etc/default/isc-dhcp-server и укажите свои частные сетевые интерфейсы (в моем случае, ens37 и 38) в строке INTERFACES="", чтобы он выглядел так:

INTERFACES="ens37 ens38"

Сохраните файл.

(7) И теперь правила брандмауэра. Нам нужно сообщить системе, что она может работать как маршрутизатор, и настроить соответствующие элементы управления и наборы правил, чтобы это произошло. Я предполагаю, что здесь вы не настроили брандмауэр, потому что я описываю настройку с нуля.

Если вы уже установили ufw на этом компьютере, запустите sudo ufw disable и затем удалите ufw с помощью sudo apt-get remove ufw. UFW не работает для того, что нам нужно, нам нужна расширенная мощность iptables напрямую. Для большинства маршрутизаторов мы не должны использовать UFW вообще.

Убедитесь, что мы знаем имя интерфейса для вашего сетевого интерфейса, подключенного к Интернету. В моей тестовой системе это было ens33, но в вашей системе это может быть разным. Удостоверьтесь, что мы также знаем сетевые интерфейсы для наших частных сетей, для которых мы будем работать; они нам тоже нужны. Настройте свой iptables следующим образом следующими командами. Обратите внимание на мои комментарии:

# Accept localhost traffic (local traffic to the system itself) sudo iptables -A INPUT -i lo -j ACCEPT # Accept all traffic related to established connections sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # Drop traffic coming from the Internet into our Internet-connected interface (except for traffic related to other established connections) # Update this to match the interface name of your Internet-connected interface. sudo iptables -A INPUT -i ens33 -j DROP # Accept traffic inbound from the local subnets we are acting as a router for. # CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP! sudo iptables -A INPUT -i ens37 -j ACCEPT sudo iptables -A INPUT -i ens38 -j ACCEPT # Since we don't want to have our system completely open to the Internet, we need # to drop all other traffic coming to our network. This way, we can prevent the # Internet at large from accessing our network directly from the Internet. sudo iptables -A INPUT -j DROP # Add rules to accept forwarding on the interfaces we are doing routing for. # CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP! sudo iptables -A FORWARD -i ens37 -j ACCEPT sudo iptables -A FORWARD -o ens37 -j ACCEPT sudo iptables -A FORWARD -i ens38 -j ACCEPT sudo iptables -A FORWARD -o ens38 -j ACCEPT # Add rules to the NAT table to allow us to actually let traffic on the interfaces # which we are doing routing for go out to the Internet masquerade as our Internet- # connected interface. # # ADJUST THE IP RANGES HERE TO MATCH THE IP RANGES AND THE SUBNETS FOR YOUR OWN # ENVIRONMENT! Remember that the IP address of 10.76.100.1 for the router, and # the netmask 255.255.255.0 is equal to the network range/CIDR of 10.76.100.0/24 # for the purposes of these rules. sudo iptables -t nat -A POSTROUTING -s 10.76.100.0/24 ! -d 10.76.100.0/24 -j MASQUERADE sudo iptables -t nat -A POSTROUTING -s 10.76.101.0/24 ! -d 10.76.101.0/24 -j MASQUERADE

(8) Установите пакет iptables-persistent, который позволит нам запомнить наши правила iptables и загрузить их при перезагрузке.

sudo apt-get install iptables-persistent`

Когда он просит сохранить существующие правила, выберите «Да» для IPv4 и IPv6.

(9) Проверьте это! Настройте еще одну систему в одной из приватных сетей, которую вы настроили, и убедитесь, что она настроена на то, что она может связываться с Интернетом и имеет настроенный DHCP-адрес в пределах частных подсетей, установленных выше!

3
ответ дан 18 July 2018 в 06:44
ПРИМЕЧАНИЕ. Это необходимо для настройки самой базовой настройки - прямого маршрутизатора для двух или более подсетей без ограничения трафика кросс-подсети. Это можно изменить с помощью правил брандмауэра, чтобы лучше обрабатывать управление отдельными функциями или сетевым доступом через подсети или outboud в Интернете, однако это выходит за рамки этой базовой «настроенной» пары Q / A.

Вам понадобится сервер Ubuntu с 3 сетевыми интерфейсами, конечно, один для интерфейса, подключенного к Интернету, и два частных сетевых интерфейса.

После этого просто следуйте этому руководству для установки этого сервера в качестве маршрутизатора:

(1) Изменить /etc/sysctl.conf. Найдите и раскомментируйте эту строку:

net.ipv4.ip_forward=1

Как только вы это сделаете, выполните команду sudo sysctl -p, чтобы перезагрузить параметры системного ядра. Это позволяет ядру Ubuntu теперь обслуживать трафик между подсетями и VLAN через IPv4.

(2) Измените поле /etc/network/interfaces маршрутизатора, чтобы настроить статический IP-адрес на интерфейсах, обслуживающих частные сети. В этом примере я знаю, что интерфейсы являются ens37 и ens38, а ens33 является основным подключенным к Интернету интерфейсом на моем ящике. Я оставляю ens33 один, но добавляет строфы конфигурации ens37 и ens38:

# Private Subnet 1 auto ens37 iface ens37 inet static address 10.76.100.1 netmask 255.255.255.0 dns-nameservers 8.8.8.8 8.8.4.4 # Private Subnet 2 auto ens38 iface ens38 inet static address 10.76.101.1 netmask 255.255.255.0 dns-nameservers 8.8.8.8 8.8.4.4

Соответственно настройте сетевые адреса и имена интерфейсов для вашей установки.

** Обратите внимание, что если вы используете VMware Workstation или аналогичные, и у вас есть vmnet# устройства, выбранные для виртуальной машины для этого, убедитесь, что хост-система либо не имеет подключенного к хосту устройства для этого vmnet, либо если if он использует другой адрес, чем .1 в последнем октете в вашем маршрутизаторе.

(3) Установите программное обеспечение сервера DHCP.

sudo apt-get install isc-dhcp-server

Это позволит ящику маршрутизатора обслуживать DHCP-запросы для ваших частных подсетей.

(4) Сначала скопируйте DHCP-сервер config, который был установлен автоматически в файл резервной копии.

sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.dist

(5) Теперь мы делаем этот оригинальный файл пустым, чтобы мы могли применить наш конфиг.

echo "" | sudo tee /etc/dhcp/dhcpd.conf

( 6) Теперь давайте воспользуемся нашей конфигурацией:

# DHCP Server config # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # Specify the domain name servers to specify for each subnet. option domain-name-servers 8.8.8.8; option domain-name-servers 8.8.4.4; # DHCP Subnet configurations # Subnet 1 - ens37 subnet 10.76.100.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; range 10.76.100.10 10.76.100.200; option routers 10.76.100.1; option subnet-mask 255.255.255.0; option broadcast-address 10.76.100.255; } # Subnet 2 - ens38 subnet 10.76.101.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; range 10.76.101.10 10.76.101.200; option routers 10.76.101.1; option subnet-mask 255.255.255.0; option broadcast-address 10.76.101.255; }

Отрегулируйте эту конфигурацию в соответствии с вашими потребностями и обязательно обновите опцию «routers» на основе любого IP-адреса, указанного выше в настройках вашей сети.

После того, как вы закончите настройку файла по мере необходимости, сохраните файл.

(7) Нам нужно сообщить системе, какие интерфейсы нужно заботиться. Измените /etc/default/isc-dhcp-server и укажите свои частные сетевые интерфейсы (в моем случае, ens37 и 38) в строке INTERFACES="", чтобы он выглядел так:

INTERFACES="ens37 ens38"

Сохраните файл.

(7) И теперь правила брандмауэра. Нам нужно сообщить системе, что она может работать как маршрутизатор, и настроить соответствующие элементы управления и наборы правил, чтобы это произошло. Я предполагаю, что здесь вы не настроили брандмауэр, потому что я описываю настройку с нуля.

Если вы уже установили ufw на этом компьютере, запустите sudo ufw disable и затем удалите ufw с помощью sudo apt-get remove ufw. UFW не работает для того, что нам нужно, нам нужна расширенная мощность iptables напрямую. Для большинства маршрутизаторов мы не должны использовать UFW вообще.

Убедитесь, что мы знаем имя интерфейса для вашего сетевого интерфейса, подключенного к Интернету. В моей тестовой системе это было ens33, но в вашей системе это может быть разным. Удостоверьтесь, что мы также знаем сетевые интерфейсы для наших частных сетей, для которых мы будем работать; они нам тоже нужны. Настройте свой iptables следующим образом следующими командами. Обратите внимание на мои комментарии:

# Accept localhost traffic (local traffic to the system itself) sudo iptables -A INPUT -i lo -j ACCEPT # Accept all traffic related to established connections sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # Drop traffic coming from the Internet into our Internet-connected interface (except for traffic related to other established connections) # Update this to match the interface name of your Internet-connected interface. sudo iptables -A INPUT -i ens33 -j DROP # Accept traffic inbound from the local subnets we are acting as a router for. # CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP! sudo iptables -A INPUT -i ens37 -j ACCEPT sudo iptables -A INPUT -i ens38 -j ACCEPT # Since we don't want to have our system completely open to the Internet, we need # to drop all other traffic coming to our network. This way, we can prevent the # Internet at large from accessing our network directly from the Internet. sudo iptables -A INPUT -j DROP # Add rules to accept forwarding on the interfaces we are doing routing for. # CHANGE THESE INTERFACE NAMES ACCORDING TO YOUR SETUP! sudo iptables -A FORWARD -i ens37 -j ACCEPT sudo iptables -A FORWARD -o ens37 -j ACCEPT sudo iptables -A FORWARD -i ens38 -j ACCEPT sudo iptables -A FORWARD -o ens38 -j ACCEPT # Add rules to the NAT table to allow us to actually let traffic on the interfaces # which we are doing routing for go out to the Internet masquerade as our Internet- # connected interface. # # ADJUST THE IP RANGES HERE TO MATCH THE IP RANGES AND THE SUBNETS FOR YOUR OWN # ENVIRONMENT! Remember that the IP address of 10.76.100.1 for the router, and # the netmask 255.255.255.0 is equal to the network range/CIDR of 10.76.100.0/24 # for the purposes of these rules. sudo iptables -t nat -A POSTROUTING -s 10.76.100.0/24 ! -d 10.76.100.0/24 -j MASQUERADE sudo iptables -t nat -A POSTROUTING -s 10.76.101.0/24 ! -d 10.76.101.0/24 -j MASQUERADE

(8) Установите пакет iptables-persistent, который позволит нам запомнить наши правила iptables и загрузить их при перезагрузке.

sudo apt-get install iptables-persistent`

Когда он просит сохранить существующие правила, выберите «Да» для IPv4 и IPv6.

(9) Проверьте это! Настройте еще одну систему в одной из приватных сетей, которую вы настроили, и убедитесь, что она настроена на то, что она может связываться с Интернетом и имеет настроенный DHCP-адрес в пределах частных подсетей, установленных выше!

3
ответ дан 24 July 2018 в 18:39

Другие вопросы по тегам:

Похожие вопросы: