- 浏览: 315947 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
JQ_AK47:
...
Linux下直接发送以太包 -
winsen2009:
谢谢分享,如果能再来一个列子就更好了,刚接触看完还是不懂的用
UNPv1_r3读书笔记: SCTP编程
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文
档的完整性,严禁用于任何商业用途。
msn: yfydz_no1@hotmail.com
来源:http://yfydz.cublog.cn
0. 声明
本文仅仅是从技术角度分析如何实现NetScreen防火墙,即如果要把本人的一台Linux机器变成NetScreen防火墙估计要作那些工作,所有观点均为个人观点,不代表任何组织或团体,只谈技术,不带任何吹捧、攻击或贬低,欢迎大家一起讨论,有错误请指正,但对文章中如有不明白的名词和概念请问google而不要问我。
档的完整性,严禁用于任何商业用途。
msn: yfydz_no1@hotmail.com
来源:http://yfydz.cublog.cn
0. 声明
本文仅仅是从技术角度分析如何实现NetScreen防火墙,即如果要把本人的一台Linux机器变成NetScreen防火墙估计要作那些工作,所有观点均为个人观点,不代表任何组织或团体,只谈技术,不带任何吹捧、攻击或贬低,欢迎大家一起讨论,有错误请指正,但对文章中如有不明白的名词和概念请问google而不要问我。
1. 参考资料: http://www.juniper.net/techpubs/software/screenos/screenos5.1.0/translated/ CE_v7_SC.pdf 第7卷:地址转换 2. 前言 NAT(Network Address Translation)是在IP(版本4)地址日渐枯竭的情况下出现的一种技术,可将整个组织的内部IP都映射到一个合法IP上来进行Internet 的访问,也可将外部对某IP的访问映射到内部的服务器上。与NAT相关的术语有IP伪装(IP Masquerade)、端口映射(Port Mapping)、端口地址转换(Port Address Translation)、透明代理(Transparent Proxy)等,它们都是NAT的某种表现形式,NAT在RFC3022中定义。 NAT分为源NAT和目的NAT两种,源NAT是指转换前源IP地址和转换后源IP地址不同,数据进入防火墙后,防火墙将其源地址进行了转换后再将其发出,使外部看不到数据包原来的源地址;目的NAT是指转换前目的IP地址和转换后目的IP地址不同(对于TCP/UDP协议,也可以改变端口号),数据进入防火墙后,防火墙将其目的地址进行了转换后再将其发出,使看不到数据包原来的目的地址。在进行NAT时,如果是一个地址到一个地址的转换,称为一对一模式;如果是一个网段地址到一个地址的转换,称为多对一的转换;如果是一个网段地址到一个网段地址的转换,称为多对多的转换。上面说的IP伪装就属于源NAT,而端口映射和透明代理等属于目的NAT。 NAT从另一个角度也可分为静态和动态两种,静态方式是明确指定了转换前后的地址和端口的情况,可以有一对一、一对多、多对一等方式,如果实际地址发生变化,NAT规则必须相应改变;而动态方式也就是IP伪装方式,是一种多到一的源NAT转换模式,一般只需指定转换前的地址,转换后地址则是防火墙的IP地址,此地址是可以动态改变的,而NAT规则可以不变。静态NAT一般用在防火墙IP地址都是固定的情况,而动态NAT用于防火墙IP地址不固定的场合,如ADSL拨号。动态情况下也可以进行目的NAT,但NAT规则是在获取了地址后才起作用。 一般来说,源NAT多用于从内部网络到外部网络的访问,内部网络地址可以是保留IP地址;目的NAT多用于外部网络到内部服务器的访问,内部服务器可使用保留IP地址。当使用透明代理模式时,由内到外的访问实际上是一种目的NAT,是将访问的目的IP和目的端口转换为代理服务器的IP和代理端口。 Linux下的netfilter提供了完整的NAT解决方案。 使用目的NAT功能时可实现负载均衡(Load Balance,LB)功能,假设防火墙外网卡上有一个合法IP,内部有多个服务器同时提供服务,当将访问防火墙外网卡IP的访问请求转换为这一组内部服务器的IP地址时,访问请求就可以在这一组服务器进行均衡,在Linux下是由IPVS完成的。 3. NS的NAT NS的NAT_src和NAT_dst是两种不相关的处理,这点和netfilter是一样的,netfilter的NAT规则也是只处理单方向的信息,反方向的主动连接不符合此规则。 PAT在netfilter中是自动启动的,在NS中还有相关选项启动,以防止在某些特殊场合不能改端口。在禁用PAT的情况下,如果地址足够多,netfilter也可以不用改端口的。 NS的NAT规则是加在策略上的,而netfilter是和过滤规则分开的,不过完成的功能是相同的,NS是一起处理了,而netfilter是分两步实现。 NS可以实现子网到子网的一对一映射,netfilter本身转换后地址是均衡选择的,不过实现这种多对多时的一对一转换很容易。 NS中的MIP相当于加了双向的NAT规则。 NS中的VIP就是通过不同端口来映射内部不同主机,这个netfilter也可以很容易实现,比较要注意的虚IP本身,Linux本身不支持虚IP,要处理不同地址的话需要加网卡别名,不过修改网卡结构可以支持网卡上带虚IP。 4. 特殊场合的NAT 4.1 重叠网段VPN通道中的NAT 这种情况在关于VPN那章中说过这种情况,为解决VPN通道两边IP地址重叠时的VPN访问问题,需要对数据在进入VPN通道前和出VPN通道后进行相关的地址转换,netfilter本身不支持这种情况,但作简单修改后可以支持。 4.2 访问内部同网段服务器 当内部服务器和内部机器在相同的内部网段,地址是内部地址的场合,用合法外部地址访问内部服务器时用普通NAT方式是无法实现的,因为这同时要修改数据包的源地址和目的地址(注意,如果服务器和内部机器不在同一内部网段,通过NAT是可以实现这种访问的)。 为处理这种情况,TRX的NetGuard用了特殊的NAT处理来实现,有的防火墙是通过DNS NAT方式来实现,从NS的手册中没有相关描述,不知道是否能正确处理这种情况。NS中源和目的地址同时改变的场合是4.1中描述的VPN场合。 5. 小结 NAT技术现在已经是一个很成熟的技术了,netfilter本身提供了完善的NAT功能,基本不比任何商业系统差,而且源码公开可以少量改动就能改造成各种所需要的处理方式。
发表评论
-
Linux内核中流量控制(24)
2011-01-10 16:33 2213本文档的Copyleft归yfydz所 ... -
Linux内核中流量控制(23)
2011-01-10 16:30 1497本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(22)
2011-01-10 16:29 1946本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(21)
2011-01-10 16:28 1362本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(20)
2011-01-10 16:27 1528本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(19)
2011-01-10 16:27 1984本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(18)
2011-01-10 16:26 1576Linux内核中流量控制(18) ... -
Linux内核中流量控制(17)
2011-01-10 16:25 1955本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(16)
2011-01-10 16:25 1812本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(15)
2011-01-10 16:24 1897本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(14)
2011-01-10 16:23 1964本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(13)
2011-01-10 16:22 2644本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(12)
2011-01-10 16:21 2115本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(11)
2011-01-10 16:21 3243本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(10)
2011-01-10 16:20 2012本文档的Copyleft归yfydz所 ... -
Linux内核中流量控制(9)
2011-01-10 16:19 1838本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(8)
2011-01-10 16:18 1504本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(7)
2011-01-10 16:18 2931本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(6)
2011-01-10 16:17 1500本文档的Copyleft归yfydz所有,使用GPL发布,可以 ... -
Linux内核中流量控制(5)
2011-01-10 16:16 1734本文档的Copyleft归yfydz所有,使用GPL发布,可以 ...
相关推荐
大家都知道netscreen是很强的一家公司,现已被juniper收购了
NetScreen 裝置是以 ASIC 為基礎、經 ICSA 認證1 的網際網路安全裝置和安全性系統,它整合了防火牆、虛擬私人網路 (VPN) 和通訊流量整理功能,當連接到網際網路時,對安全區如內部區域網路 (LAN) 或非軍事區域 (DMZ)...
NetScreen手册 ScreenOS 参考指南
NetScreen产品升级步骤,新手学习如何让升级NetScreen的os
Juniper Netscreen 防火墙 培训 地址翻译.pdf Juniper Netscreen 防火墙培训 安全策略.pdf Juniper Netscreen 防火墙培训 防火墙的管理.pdf Juniper Netscreen 防火墙培训 防火墙基本概念.pdf Juniper Netscreen ...
netscreen命令行基本信息收集netscreen命令行基本信息收集
Netscreen 25/50 OS 5.4.0r6 固件
NetScreen-204 是目前市场上功能最多的防火墙产品,通过使用内置的WebUI界面、 命令行界面和NetScreen中央管理方案,可在很短时间完成安装和管理,并且可以快速实 施到数千台设备上;所有NetScreen 产品都整合了一个...
Juniper Netscreen & SSG Firewall的配置说明(英文版)。
Juniper Netscreen 常用防火墙命令,非常实用,很多防火墙基础功能命令
netscreen nat 网络地址翻译方法总结和实验
Netscreen 防火墙 OS 升级指南
非常实用地的netscreen命令速查手册
Netscreen SNMP MIBs (5.0 OS) Netscreen SNMP MIBs (5.0 OS)
Juniper+netscreen端口映射
Netscreen防火墙初级配置指南0.pdf
netscreen教程,配置,快点给分把 我要下个东西
其中关于NetScreen的收购被定义为失败和并为之可惜. 其原文为:“ Pureplay security vendors today have a combined market cap of ~$30B. NetScreen was a leader and would have been more valuable and ...
Netscreen防火墙是一种高性能的硬件防火墙,与其它的硬件防火墙相比有本质的区别。其它的硬件防火墙实际上是运行在PC平台上的一个软件防火墙,而Netscreen防火墙则是由ASIC芯片来执行防火墙的策略和数据加解密,因此...