Маршрутизация интернет-трафика через другую подсеть на centos

Я очень новичок в маршрутизации Linux. Хотя я понимаю это концептуально, фактические команды маршрута избегают меня. Я попробовал ip route и ip rule самостоятельно, но они не сработали. Отсюда и вопрос здесь.

Вот мои текущие настройки. Сервер Centos с двумя сетевыми картами

eth0 (external and open to the internet)
- static IP: 192.168.13.10
- GW: 192.168.13.1
eth1 (internal private)
- static IP: 192.168.15.10
- GW: Not defined yet. (as I would imagine 192.168.13.1 to be catch all)

Клиент Centos с одним NIC

eth0
- Static IP: 192.168.15.200
- GW: 192.168.15.10

Во-первых, я бы хотел, чтобы клиент Centos мог подключаться к Интернету только через сервер Centos. Я знаю, что мне не хватает какой-либо формы записи таблицы маршрутизации для работы выше. Может ли кто-нибудь указать мне на это?

Во-вторых, я бы хотел, чтобы клиент Centos получал IP-адрес от сервера Centos. У меня установлен dhcpd на сервере Centos. Так что достаточно просто изменить booproto в скрипте ifcfg-eth0 (со статического на dhcp) или требуются какие-либо изменения маршрутизации на клиенте centos?

2 ответа

Решение

Джон прав, но некоторые необязательные правила брандмауэра не являются обязательными, но обязательными. Для маршрутизации трафика в Интернет вам нужна переадресация IP, как объяснил Джон, но вам также понадобится маскарадинг IP (NAT).

Отредактируйте /etc/sysctl.conf и добавьте

net.ipv4.conf.default.forwarding=1

Перезапустите сетевой сервис

service network restart

Теперь вам понадобится правило iptables "NAT":

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Я не слишком знаком с CentOS, но, возможно, вам нужно перезапустить службу или проблему iptables iptables save (или оба).

Ваша настройка в том виде, в каком она существует, является правильной, но неполной. Вам необходимо включить пересылку пакетов на сервере CentOS и, при желании, какой-нибудь брандмауэр, чтобы заблокировать нежелательный трафик. Ваши клиенты уже пытаются пройти через сервер, чтобы попасть в Интернет, они просто не могут этого сделать, пока вы не включите пересылку пакетов как минимум.

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

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