URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 4947
[ Назад ]

Исходное сообщение
"iptables 2 сети на одном интерфейсе"

Отправлено naidgel , 03-Окт-11 07:31 
Добрый день! Есть следующая схема сети:

192.168.1.0/24------ISP------INternet
                                    |
                                  1|
                          Gateway-----192.168.0.0/24
                                        2

1. eth1: 10.0.0.2/30 - Выход в интернет
   eth1:1 192.168.1.15/24 - Объединенная локальная подсеть
2  eth0 192.168.0.15/24 - Внутренняя подсеть


Задачи:
1. Дать интернет обоим подсетям
2. Настроить маршрутизацию из 192.168.0.0/24 в 192.168.1.0/24 и обратно

iptables

#!/bin/sh

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

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

iptables -A INPUT -i lo -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.1.0/24 -j MASQUERADE

iptables -t nat -A PREROUTING -i eth0 -d ! 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT -- to 192.168.0.15:3128
iptables -t nat -A PREROUTING -i eth1 -d ! 192.168.1.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT -- to 192.168.1.15:3128

При таком конфиге работает интернет только в подсети 192.168.0.0/24


Содержание

Сообщения в этом обсуждении
"iptables 2 сети на одном интерфейсе"
Отправлено PavelR , 03-Окт-11 08:28 

> При таком конфиге работает интернет только в подсети 192.168.0.0/24

сам конфиг придумал или подсказал кто ?



"iptables 2 сети на одном интерфейсе"
Отправлено naidgel , 03-Окт-11 12:09 
>> При таком конфиге работает интернет только в подсети 192.168.0.0/24
> сам конфиг придумал или подсказал кто ?

от части



"iptables 2 сети на одном интерфейсе"
Отправлено суслик , 03-Окт-11 11:33 
нда...
перекинь обе подсети на 1 интерфейс, а инет оставь на втором.
еще есть выариант использовать vlan-ы.. тогда вообще можно обойтись одной сетевой картой... но тут нужно соотв. умный коммутатор (L2 как минимум)

"iptables 2 сети на одном интерфейсе"
Отправлено naidgel , 03-Окт-11 12:15 
> нда...
> перекинь обе подсети на 1 интерфейс, а инет оставь на втором.
> еще есть выариант использовать vlan-ы.. тогда вообще можно обойтись одной сетевой картой...
> но тут нужно соотв. умный коммутатор (L2 как минимум)

Так и сделал пока. Но не нравиться хотелось бы такую топологию оставить. Про vlan думал была бы кошка и вопросов бы не было((


"iptables 2 сети на одном интерфейсе"
Отправлено Дядя_Федор , 03-Окт-11 13:35 
> Так и сделал пока. Но не нравиться хотелось бы такую топологию оставить.
> Про vlan думал была бы кошка и вопросов бы не было((

А чем бюджетные Д-Линки не устраивают? :) Вполне себе решение для VLAN on port based (как вариант). А Линукс уж вланы Бог знает сколько поддерживает. Ну и сетевые, разумееется.
ПыСы: прошу прощения за небольшой отход от темы.



"iptables 2 сети на одном интерфейсе"
Отправлено КуКу , 03-Окт-11 11:37 
>iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.1.0/24 -j MASQUERADE

!192.168.1.0/24   --узазывает на то что для всех КРОМЕ даной подсети, потому логично что у тебя нат работает только в 192.168.0.0/24


"iptables 2 сети на одном интерфейсе"
Отправлено naidgel , 03-Окт-11 12:12 
>>iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.1.0/24 -j MASQUERADE
> !192.168.1.0/24   --узазывает на то что для всех КРОМЕ даной подсети,
> потому логично что у тебя нат работает только в 192.168.0.0/24

нда конфиг не целый, это сделано чтоб 192.168.1.0/24 не ходило через NAT. Думал как завернуть её на eth1.


"iptables 2 сети на одном интерфейсе"
Отправлено reader , 04-Окт-11 00:03 
>>iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.1.0/24 -j MASQUERADE
> !192.168.1.0/24   --узазывает на то что для всех КРОМЕ даной подсети,
> потому логично что у тебя нат работает только в 192.168.0.0/24

это было бы так если вместо -d было бы -s


"iptables 2 сети на одном интерфейсе"
Отправлено reader , 04-Окт-11 00:09 
>[оверквотинг удален]
> iptables -A INPUT -m state --state NEW -i ! eth1 -j ACCEPT
> iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j
> ACCEPT
> iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
> iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.1.0/24 -j MASQUERADE
> iptables -t nat -A PREROUTING -i eth0 -d ! 192.168.0.0/24 -p tcp
> -m multiport --dport 80,8080 -j DNAT -- to 192.168.0.15:3128
> iptables -t nat -A PREROUTING -i eth1 -d ! 192.168.1.0/24 -p tcp
> -m multiport --dport 80,8080 -j DNAT -- to 192.168.1.15:3128
> При таком конфиге работает интернет только в подсети 192.168.0.0/24

FORWARD входящих и исходящих через eth1 разрешите