Здравейте,
Имам следният проблем. Имам локална мрежа, която се върти през 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
============================================================================