У меня есть две подсети, скажем, 192.168.1.0/24 и 192.168.2.0/24, которые соединены одним сервером Ubuntu с двумя интерфейсными платами (eth0 и wlan0). Существует партия описаний с помощью NAT способом, что хосты скрыты позади маршрутизатора. Я хотел бы проверить с помощью ping-запросов хосты в обеих подсетях наоборот. Как я должен настроить сервер Ubuntu?
Раздел о том, где и то, которое направляет для установки, является все еще происходящей работой. Это зависит от топологии сети.
Во-первых, необходимо удостовериться, что клиенты на каждой стороне маршрутизатора на самом деле используют маршрутизатор для отправки пакетов в другую сеть. Таким образом, необходимо будет установить соответствующие маршруты.
В зависимости от остальной части Вашей сети существуют потенциально различные способы установить маршрутизацию.
Давайте предположим, что сервер имеет адреса IP 192.168.1.1 и 192.168.2.1 для eth0
и wlan0
.
У Вас есть маршрутизатор, который соединяет одну из сетей к Интернету. Обычно маршрутизатор, обеспеченный Вашим ISP. Давайте притворимся, что это - network1, и назовите маршрутизатор netgw-1. В этом случае клиенты установят netgw-1 как свое значение-по-умолчанию-gw. Если бы netgw-1 способен, лучший способ пойти состоял бы в том, чтобы добавить запись в свою таблицу маршрутизации в сути
192.168.2.0/24 via 192.168.1.1
Как сделать, это точно зависит от устройства.
Тем путем клиентам не будут нужны дополнительные маршруты, но пакеты, предназначенные для network2, отправляют через netgw-1 к серверу к network2.
К сожалению, это, скорее всего, не будет возможно, так как маршрутизатор не позволит управлять своей таблицей маршрутизации. Это оставляет Вас с опцией добавить запись в таблицу маршрутизации на каждом клиенте.
Примечание: То, как сделать маршруты персистентными, зависит от клиентского метода конфигурации сети (например, NetworkManager или /etc/interfaces
).
Но в целях тестирования, возьмите клиент в каждой сети и установите маршрут (на клиенте!).
Текущие маршруты могут быть перечислены через ip route show
.
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
Это устанавливает маршрут на сеть 192.168.2.0/24 использование маршрутизатора 192.168.1.1, отсылая пакеты через интерфейс eth0
. Необходимо будет адаптировать команду, в зависимости от которой объединяются в сеть, клиент идет, и название сетевого интерфейса.
После этого это должно быть столь же просто как включение IPv4, передав _on сервер. Когда опция net.ipv4.ip_forward
включен, ядро передаст пакеты IP через сетевые интерфейсы сервера.
Проверять состояние передачи: sysctl net.ipv4.ip_forward
Если это 0, включите его через
sudo sysctl -w net.ipv4.ip_forward=1
Теперь попытайтесь проверить с помощью ping-запросов через маршрутизатор. Если бы это работает, как желаемый, и требуется установить настройку, персистентную на перезагрузке, открытой /etc/sysctl.conf
и набор
net.ipv4.ip_forward=1
Обратите внимание, что Вы могли бы хотеть к фильтрам установочного пакета через iptables
запретить определенный трафик, в зависимости от Ваших потребностей безопасности. Но это - другая тема.
При установке машины, поскольку маршрутизатор NAT требует установки iptables
для подмены трафика но как вопрос предполагает, что Вы уже прочитали практические руководства о той теме.