LINUX.ORG.RU
ФорумAdmin

Настройка сети


0

1

Подскажите, пожалуйста. Имеется 2 провайдера. 2-ой включен в маршрутизатор, сеть 192.168.1.0/24 (назовем её А), в этой сети есть сервер (192.168.1.100, eth3). В него включен 1-ый провайдер (eth0). С сервера - нат 10.1.0.0/24, работает через 1-го провайдера.

IP1=a.b.c.d
IP2=192.168.1.1
GATE1=a.b.c.e
GATE2=192.168.1.1

TABLE1=P1
M1=1

TABLE2=P2
M2=10

ip route flush table $TABLE1
ip route add default via $GATE1 table $TABLE1
ip route del default via $GATE1
ip route add default via $GATE1 metric $M1
ip rule del table $TABLE1
ip rule del table $TABLE1
ip rule add from $IP1 table $TABLE1

ip route flush table $TABLE2
ip route add default via $GATE2 table $TABLE2
ip route del default via $GATE2
ip route add default via $GATE2 metric $M2
ip rule del table $TABLE2
ip rule add from $IP2 table $TABLE2

ip rule add from 10.1.0.0/24 table $TABLE1
ip route add 10.1.0.0/24 via 10.1.0.1 dev br0 table $TABLE1
ip route flush cache

iptables -F
iptables -F -t nat
iptables -F -t mangle
iptables -X
iptables -t nat -X
iptables -t mangle -X

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i br0 -j ACCEPT
iptables -A INPUT -i eth3 -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -o br0 -j ACCEPT
iptables -A OUTPUT -o eth3 -j ACCEPT

iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP

iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP

iptables -A FORWARD -i br0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o br0 -j REJECT

iptables -t nat -A POSTROUTING -o eth0 -s 10.1.0.0/24 -j SNAT --to-source a.b.c.d

iptables -A INPUT -i eth0 -p tcp --dport  80 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --dport  80 -j ACCEPT
...
Есть несколько вопросов. Почему когда IP2=192.168.1.100, то из сети А сервер не отвечает? При IP2=192.168.1.1 все работает, но когда я направляю порт на маршрутизаторе (например 80) на сервер - не отвечает с интернета, хотя с сети А нормально. И как сделать чтоб из 10.1.0.0/24 пакеты на 192.168.1.* шли через eth3, в сеть А, а остальное через eth0, 1-го провайдера?


Хотел понять, честно!

petav ★★★★★
()

не распарсил, приведи мысли в порядок и начерти схемку что ли...

Pinkbyte ★★★★★
()

Ну есть сервер, в нем 4 сетевые карты eth0-eth3. eth0 смотрит в интернет (ip a.b.c.d). eth1-eth2=br0 раздают инет в локальную сеть (nat, 10.1.0.0/24, пусть это сеть Б). eth3 тоже смотрит в интернет, но только через маршрутизатор (ip сервера - 192.168.1.100, шлюза - 192.168.1.1, а эту сеть назовем А). Так вот, я хочу сделать, чтоб компьютеры из сети Б имели доступ к компьютерам из сети А, но интернет шел через первого провайдера (eth0). Настройки выше. И еще: когда в скрипте IP=192.168.1.100, сервер не отвечает с сети А, когда 192.168.1.1 - нормально. Но все равно, если направить какой-то порт с маршрутизатора на сервер (в сети А), то опять сервер не отвечает. Подскажите, пожалуйста, в чем проблема? Сервер с 1-го провайдера отвечает, маршрутизатор порт направляет, с другого компьютера проверил.

artemz
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.