Две сетевые карты и IP-пересылка

8

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

У меня есть два интерфейса локальной сети.

Допустим, интерфейс A 'IP есть 172.16.1.10;
IP интерфейса B есть 192.168.1.10.

Как я могу настроить Ubuntu, чтобы 172.16.1.1 мог подключаться к 192.168.1.1?

Исара Рунгвитаякуль
источник

Ответы:

12

Звучит так, как будто вы настраиваете маршрутизатор.

Вам нужно всего лишь внести несколько изменений, чтобы включить переадресацию IP

Включить переадресацию IP

echo 1 > /proc/sys/net/ipv4/ip_forward

Настройте iptables

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

Смотрите также Ubuntu Wiki router

Вы, вероятно, захотите немного узнать о iptables

Брандмауэры Linux с использованием IPTables

Если все это кажется слишком сложным, могу ли я предложить вам один из дистрибутивов linux, созданный для работы в качестве маршрутизатора? Мне нравится smoothwall, но есть и другие на выбор.

Smoothwall

Отдельные дистрибутивы брандмауэра будут обрабатывать большую часть или всю конфигурацию для вас, и большинство поставляются с веб-интерфейсом, чтобы сделать его еще проще.

пантера
источник
Это работает как волшебство. Теперь пакет из 172.16.2.100 (eth0) проходит через 192.168.1.1 (eth1), однако пакет из 192.168.1.1 не может достичь 172.16.2.100. Существуют ли какие-либо симметричные конфигурации, которые могут быть получены с обеих сторон? Я пытаюсь настроить iptalbes с обратной конфигурацией, но все еще не работает. Спасибо.
Исара Рунгвитаякуль
Можете ли вы быть более конкретным, что вы хотите? Звучит так, как будто вам нужно настроить iptables.
Пантера
Прямо сейчас 172.16.1.1 можно пропинговать к маршрутизатору (реальный маршрутизатор не Ubuntu 192.168.1.1), но тот маршрутизатор не может пропинговать к 172.168.1.1. Представьте, что у меня есть 2 компьютера (A, B) и маршрутизатор (C )
Исара Рунгвитаякуль
Прямо сейчас 172.16.1.1 можно пропинговать к маршрутизатору (реальный маршрутизатор не Ubuntu 192.168.1.1), но тот маршрутизатор не может пропинговать к 172.168.1.1. Представьте, что у меня есть 2 компьютера (A, B) и маршрутизатор (C ) A имеет IP-адрес 172.16.1.1, B имеет IP-адрес 192.168.1.10, а 172.16.1.10 C имеет IP-адрес 192.168.1.1. Соединение с BB, подключение к CA, может говорить (пинговать) с C через B, но C не может говорить (пинговать) с A через B << моя проблема A может общаться с C из-за вашего решения Итак, что мне делать дальше, чтобы C мог говорить с A (обратная конфигурация?)
Исара Рунгвитаякуль
Вам понадобится аналогичная конфигурация. Вам действительно нужно прочитать iptables для понимания, если вы собираетесь настроить свой маршрутизатор. Вы должны понимать, что выполняют те 3 правила, которые я вам дал. Если вы собираетесь разрешить весь трафик на выходе, то какой смысл настраивать маршрутизатор / подсеть? Ответ на этот вопрос настроит iptables.
Пантера