lug-bg: DNAT
- Subject: lug-bg: DNAT
- From: Simeon Monov <moni@xxxxxxxxx>
- Date: Wed, 14 Apr 2004 12:36:51 +0300
Здравейте,
Имам следният проблем. Имам локална мрежа, която се върти през SNAT към
интернет с 1 външно IP. Имам вътрешен компютър с пуснат webserver и с
DNAT пренасочвам всички връзки към 80-ти порт към него. Работи си добре
но има проблем при достъп от локалната мрежа (т.е. няма достъп от
локалната мрежа към външното IP на 80-ти порт). Пуснах tcpdump и въдях,
че заявките от локалните компютри към външното IP като минат през DNAT
се променят като заяки в локалната мрежа - примерно външното IP ако е
1.2.3.4 и имаме IP на локалния интерфейс на routera 192.168.1.1 и IP на
компютъра, където е webservera 192.68.1.2 и IP на клиент от локалната
мрежа 192.168.1.5, тогава заявка от 192.168.1.5 към 1.2.3.4:80 като мине
през DNAT става като заявка от 192.168.1.5 към 192.168.1.2:80 и
192.168.1.2 тръгва да отговаря на 192.168.1.5 директно по интерфейса и
понеже 192.168.1.5 очаква отговор от 1.2.3.4 не получава нищо. Успях да
направя нещо като в OUTPUT веригата на nat таблицата (след като съм
пуснал да може да се прави NAT на локалните връзки в kernela) сложих
същия DNAT но се наложи и да добавя SNAT na всички връзки от
192.168.1.0/24 към 192.168.1.2 да си сменят Source IP на 192.168.1.1 -
по този начин тръгнаха нещата но ми изглежда много завъртяно и ще съм
много благодарен ако някой може да ми предложи друг начин за решаване на
проблема.
Това са ми правилата в nat таблицата с които работи:
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 1.2.3.4 tcp dpt:80
to:192.168.1.2
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 192.168.1.1 0.0.0.0/0
SNAT tcp -- 192.168.1.0/24 192.168.1.2 tcp dpt:80
to:192.168.1.1
ACCEPT all -- 192.168.1.0/24 192.168.1.0/24
SNAT all -- 192.168.1.0/24 0.0.0.0/0 to:1.2.3.4
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 1.2.3.4 tcp dpt:80
to:192.168.1.2
Поздрави,
Симеон Монов
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================
|