LINUX.ORG.RU
ФорумAdmin

И снова NAT, iptables,route. Где то ошибка


0

0

ОС: Ubuntu Server 8.10
eth0: inet с внешним ip. далее &inet
eth1: ip 10.0.3.1 netmask 24
eth2: ip 10.0.2.1 netmask 24

Далее всё просто, дать инет локальной сети... Но вот головой бьюсь уже весь день.... где допустил ошибку, ума не приложу, что забыл?

iptables

# Generated by iptables-save v1.4.0 on Sat May 2 03:41:08 2009
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -p tcp -s 10.0.3.0/24 -o eth0 -j SNAT --to-source &inet
-A POSTROUTING -p udp -s 10.0.3.0/24 -o eth0 -j SNAT --to-source &inet
-A POSTROUTING -p icmp -s 10.0.3.0/24 -o eth0 -j SNAT --to-source &inet
-A POSTROUTING -p tcp -s 10.0.2.0/24 -o eth0 -j SNAT --to-source &inet
-A POSTROUTING -p udp -s 10.0.2.0/24 -o eth0 -j SNAT --to-source &inet
-A POSTROUTING -p icmp -s 10.0.2.0/24 -o eth0 -j SNAT --to-source &inet
COMMIT
*mangle
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
*filter
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -o eth0 -j LOG --log-level 7 --log-prefix BANDWIDTH_OUT:
-A FORWARD -i eth0 -j LOG --log-level 7 --log-prefix BANDWIDTH_IN:
-A OUTPUT -o eth0 -j LOG --log-level 7 --log-prefix BANDWIDTH_OUT:
-A INPUT -i eth0 -j LOG --log-level 7 --log-prefix BANDWIDTH_IN:
-A FORWARD -j ACCEPT
-A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -m state --state NEW -j ACCEPT
COMMIT
#s


По сути простейший конфиг, а ничерта не пашет.. инет есть, сервак пингует любую машину в сетях и инет видит, но с машины в локалке пингуется только сервак, включая внешние интерфейсы, но не инет (

echo "1" > /proc/sys/net/ipv4/ip_forward естественно сделал

k4m454k
() автор топика
Ответ на: комментарий от anton_jugatsu

да, конечно
Destination Gateway Genmask Flags Metric Ref Use Iface
77.246.248.64 * 255.255.255.192 U 0 0 0 eth0
10.0.2.0 * 255.255.255.0 U 0 0 0 eth2
10.0.3.0 * 255.255.255.0 U 0 0 0 eth1
link-local * 255.255.0.0 U 1000 0 0 eth0
default 248-65.umostel. 0.0.0.0 UG 100 0 0 eth0

k4m454k
() автор топика

> -A POSTROUTING -p tcp -s 10.0.3.0/24 -o eth0 -j

Отмени все в iptables, выставь -P ... ACCEPT
и добавь одно правило
iptable -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Если не работает у клиента по IP (может у тебя с ДНС еще проблемы) и ip_forward так таки == 1, то внимательно смотри раутинг на клиенте и может твой провайдер еще фигней мается и "не разрешает" NAT

sdio ★★★★★
()
Ответ на: комментарий от sdio

тоесть всё, из цепочки POSTROUTING я удаляю и ставлю правило с маскарадом? о_О С ДНС всё ок.. проверено. Сервер же резолвит адерса, а клиенты к тому же ДНС обращаются...

k4m454k
() автор топика
Ответ на: комментарий от k4m454k

> тоесть всё, из цепочки POSTROUTING я удаляю и ставлю правило с маскарадом?

Да и вообще все правила удали, у тебя все-равно политика по-умолчанию ACCEPT

sdio ★★★★★
()
Ответ на: комментарий от sdio

Спасибо, завтра на работе проверю. Если что, снова напишу )

k4m454k
() автор топика
Ответ на: комментарий от sdio

Спасибо

Всё заработало. Спасибо, теперь буду уж нормальные правила писать... Кстати, как ограничить торренты?

k4m454k
() автор топика
Ответ на: комментарий от nnz

Вообще бы запретить. А если знаете как урезать, тоже скажите, на аське отыграюсь, чтобы файлы не слишком кидали.

k4m454k
() автор топика
Ответ на: комментарий от k4m454k

В xtables-addons есть критерий ipp2p для iptables.
apt-get install xtables-addons-source
cd /usr/src/
tar xjvf xtables-addons.tar.bz2
m-a a-i xtables-addons-source
dpkg -i xtables-addons-modules*.deb # Не помню, обязательно ли это

После этого
iptables -I FORWARD -p tcp -m ipp2p --bit -j DROP
iptables -I FORWARD -p udp -m ipp2p --bit -j DROP

Насчет резать скорость - это придется мозгами пошевелить. В двух словах это не расскажешь http://lartc.org/howto/
Хотя, конечно, можно банальный hashlimit сделать.

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