iptables && port redirect
which can specify a single new destination IP address, an inclusive range of IP
addresses, and optionally, a port range (which is only valid if the rule also speci-
fies -p tcp or -p udp). If no port range is specified, then the destination port
will never be modified.
[ ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:02:B3:C0:09:60
inet addr:192.168.0.201 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::202:b3ff:fec0:960/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:970633 errors:0 dropped:0 overruns:0 frame:0
TX packets:651947 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:915939139 (873.5 MiB) TX bytes:69838500 (66.6 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:10629 errors:0 dropped:0 overruns:0 frame:0
TX packets:10629 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2153485 (2.0 MiB) TX bytes:2153485 (2.0 MiB)
[ ~]# iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.0.201 --dport 9000 -j DNAT --to-destination 192.168.0.85:8080
[ ~]# iptables -L -t nat -vn
Chain OUTPUT (policy ACCEPT 245 packets, 7414 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 245 packets, 7414 bytes)
pkts bytes target prot opt in out source destination
Chain PREROUTING (policy ACCEPT 112 packets, 16283 bytes)
pkts bytes target prot opt in out source destination
0 0 DNAT tcp -- eth0 * 0.0.0.0/0 192.168.0.201 tcp dpt:9000 to:192.168.0.85:8080
[ ~]#GET 192.168.0.85:8080 > /dev/null && echo GOOD
GOOD
после этого на http://192.168.0.201:9000/ не заходит
просто надо запросы на 192.168.0.85 тоже натить своим адресом (-j SNAT)
потому что комп-спрашиватель идет на твой айпи, а ответ ему приходит от 192.168.0.85
а то я в нем не силен (мягко выражаясь )
думаю типа того, хотя не уверен, что все в комплексе заработает
спасиба, заработало
Оставить комментарий
zya369
в общем такая картина:есть 2 компа: с ip1, ip2 соотв.
на вотором открыт порт p2, который доступен с 1-го компа, но не доступен с других
как сделать, чтобы с каким-нибудь портом (например p1) 1-го компа можно было общаться как с портом p2 2-го компа
это
работает для перенаправления портов на одной машине, а как быть с 2-мя разными компами?