免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1784 | 回复: 8
打印 上一主题 下一主题

iptable和nat问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-04 22:04 |只看该作者 |倒序浏览
网络环境:

(  web主机  )            (    防火墙iptable    )     (  客户机  )
192.168.1.11 <----> 192.168.1.50 | 1.0.0.1 <----> 1.0.0.2
                        eth0              eth1

并且开启了路由:

echo "1" /proc/sys/net/ipv4/ip_forward

iptable内容:

iptables -X
iptables -Z
iptables -F

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

iptables -t nat -X
iptables -t nat -Z
iptables -t nat -F

iptables -t nat PREROUTING DROP
iptables -t nat POSTROUTING DROP
iptables -t nat OUTPUT DROP

iptables -A FORWARD -i eth1 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -o eth1 -p tcp --dport 1023:65535 -j ACCEPT

iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 192.168.1.11

这样做了还需要什么设置。

论坛徽章:
0
2 [报告]
发表于 2008-07-04 22:26 |只看该作者
如果这样搞,和直接做路由有什么区别?!
DNAT多用于端口重定向。

论坛徽章:
0
3 [报告]
发表于 2008-07-05 19:20 |只看该作者
你好,我主要是想知道NAT原理。通过iptables过滤,来了解NAT使用了那些转发。比如,我知道它使用了POSTROUTING规则。但是并不知道具体该怎么匹配此规则,或者说是此规则具体该怎么写。

谢谢

论坛徽章:
0
4 [报告]
发表于 2008-07-05 19:40 |只看该作者
1. 您的 echo 1 後面沒有使用 > 導向符號到文件檔.

2. PREROUTING 與 POSTROUTING chain 預設為 DROP 似乎有點自找麻煩. 不知道請問封包回覆出去時候, 這樣的 POSTROUTING 都是 DROP 時候應該丟不回吧 ?

建議可以看一下網絡版精華區 iptables faq 有一些協助資訊.

--

论坛徽章:
0
5 [报告]
发表于 2008-07-05 20:29 |只看该作者
现在在学习当中,自找麻烦是应当的。我主要是想搞清楚原理。以后我不会这样自找麻烦了。
呵呵
还有。echo "1" > /proc/sys/net/ipv4/ip_forward里面确实疏忽了>。但实际中是有的。
不好意思。

论坛徽章:
0
6 [报告]
发表于 2008-07-05 21:57 |只看该作者
原帖由 fl8866 於 2008-7-5 20:29 發表
現在在學習當中,自找麻煩是應當的。我主要是想搞清楚原理。以後我不會這樣自找麻煩了。
呵呵
還有。echo "1" > /proc/sys/net/ipv4/ip_forward裡面確實疏忽了>。但實際中是有的。
不好意思。


答案已經提醒過了,您沒考慮到 tcp/ip 雙向溝通的問題,所以提過 POSTROUTING 回應的部份你沒有允許,那封包傳遞回應失敗連結就失敗。

--

论坛徽章:
0
7 [报告]
发表于 2008-07-05 22:13 |只看该作者

回复 #6 kenduest 的帖子

但是请问,其实我的问题也在这里。就是知道有POSTROUTING回应。但是具体回应规则是什么。
我想搞清楚这个问题。
呵呵
谢谢你的关注。

论坛徽章:
0
8 [报告]
发表于 2008-07-05 22:26 |只看该作者
(  web主机  )            (    防火墙iptable    )     (  客户机  )
192.168.1.11 <----> 192.168.1.50 | 1.0.0.1 <----> 1.0.0.2
                        eth0              eth1

按照这个结构,如果是SNAT,在将网关指向NAT服务器的情况下基本上不需要指定回来的规则,如果是DNAT也基本上一样。
也就是说web主机和客户机都要将网关指向防火墙的两个接口。或者你的NAT本身具备路由能力。
但是你的DNAT没有涉及到端口的重定向,所以在实际工作中似乎意义不大。

论坛徽章:
0
9 [报告]
发表于 2008-07-05 22:36 |只看该作者
原帖由 fl8866 於 2008-7-5 22:13 發表
但是請問,其實我的問題也在這裡。就是知道有POSTROUTING回應。但是具體回應規則是什麼。
我想搞清楚這個問題。
呵呵
謝謝你的關注。


觀念答案在以前文章內,我有說過那個 iptables faq 你有先看過嗎 ?

http://linux.chinaunix.net/bbs/thread-812400-1-1.html

若你還是無法釐清,有個最簡單答案給你參考:

  1. iptables -t nat -A POSTROUTING  -s 192.168.1.11 -j ACCEPT
复制代码


你這樣用:

  1. iptables -t nat POSTROUTING DROP
复制代码


把 nat table 內的 chain 改成 policy 為 DROP 根本就是自找麻煩,這些 chain 不是讓你改這個用的,請認知思考 "nat" 這個用字,不要誤解了這些 chain 的用途。

我個人還是會建議你,先把 iptables 的一些基本語法使用概念弄懂後再來談 default policy 為 DROP 的情況,要不然這篇問題討論中似乎還是老樣子呢。

--
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP