LINUX.ORG.RU
ФорумAdmin

две сетевухи + три сети + iptables + routing


0

0

Есть картинка моей сети
eth1
|
|
/--------\
| Linux |---eth0
\--------/ eth0:0
|
ppp0 (dial-up)

OS: Slackware 7.1
kernel: 2.4.6
iptables: 1.2
eth0: 192.168.1.0/24
eth0:0 192.168.2.0/24
eth1: 213.159.81.6/32

до того как появился eth1 все было замечательно, т.е. сетки 1.0/24 и 2.0/24 ходили в и-нет через ppp0
Сейчас нужно сетку 2.0/24 eth0:0 (т.е., которая висит на алиасе) нужно зарулить на eth1 и так чтобы о ppp0 она даже и не знала
интерфейс поднимаю так
ifconfig eth1 213.159.81.6 netmask 255.255.255.252 up
при этом автоматически выставляется роутинг на default gw
Правильно ли это?
Сейчас мой rc.firewall выглядит так
#!/bin/sh
#
# /etc/rc.d/rc.firewall: Kernel level firewall script.
#
# Author: Peter Teslenko <inkyspot@home.ru>
#

# Some env vars
IPTABLES="/usr/local/sbin/iptables"
LOCALNET1="192.168.1.0/24"
LOCALNET2="192.168.2.0/24"
ANYWHERE="0.0.0.0/0"
LOCALNET_DEV="eth0"
EXTERNALNET_DEV="ppp0"
SQUID_PORT="3128"
HTTP_PORT="80"
IRC_PORT="6667"

# Flush all chains
$IPTABLES -F
$IPTABLES -X
$IPTABLES -t nat -F
$IPTABLES -t nat -X

# Default policy
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT

# http => squid
$IPTABLES -t nat -A PREROUTING -s $LOCALNET1 -p tcp --dport $HTTP_PORT -j REDIRECT --to-port $SQUID_PORT

# Masquerade & NAT
$IPTABLES -t nat -A POSTROUTING -s $LOCALNET1 -d $ANYWHERE -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -s $LOCALNET2 -j SNAT --to-source 213.159.81.6

#================================= INPUT ===================================
# DROP all IRC servers
$IPTABLES -A INPUT -d $ANYWHERE -p tcp --dport $IRC_PORT -j DROP

#================================ LOGGING ==================================
#$IPTABLES -P INPUT -j LOG
#$IPTABLES -P FORWARD -j LOG
#$IPTABLES -P OUTPUT -j LOG

#===================== List all rules in all chains ========================
$IPTABLES -L
$IPTABLES -t nat -L

echo 1 >/proc/sys/net/ipv4/conf/default/rp_filter

Но что-то не так работает :(
где может быть ошибка?

по-моему достаточно добавить route add -net 2.0.0.0 netmask 255.255.255.0 gw (gw eth1) dev eth1 route add -net 1.0.0.0 netmask 255.255.255.0 gw (gw ppp0) dev ppp0 можно прописать в static-routes

и вообще какая у тебя таблица роутинга route -n?

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