当前位置:首页 » 专业资讯
开发技术指南» 文章正文
    引言: Chapter 3. 表和链这一章我们来讨论数据包是以什么顺序、如何穿越不同的链和表的。
 

 

 ·redhat9+vsftpd1.1.3+mysql3.2    »显示摘要«
    摘要:redhat9+vsftpd1.1.3+mysql3.2本文参考了vsftpd安装文档,vsftpd的example及网上众多网友的文章。 在redhat9+vsftpd1.1.3+mysql3.2上测试通过。 本文不适用于使用mysql4的用户。 请注意:不要直接copy我这里的配置文件,可以造成ftp启动不正常,所以还是多费点事,自己输入吧 本文对本地用户、虚拟用户目录进行了限制,每个用户拥有自己独立的目录。 本文中所使用的......
 ·xmanager 配置说明    »显示摘要«
    摘要: xmanager是一个简单易用的高性能的运行在windows平台上的x server软件。它能把远端unix/linux的桌面无缝地带到你的windows上,甚至当你的电脑是在内网或防火墙后,你也能通过ssh协议安全的运行远端的x应用程序。特点包括: -可通过xcongfig工具设置多个xmanager设置; -支持多用户的windows终端环境; -支持多个ip地址; -支持本地资源数据库; -通过热键转换键盘映射; -支持多窗口下的windows打印......


iptable指南之(3)表和链

3. 表与链

3.1. 概述 【相关文章:awk 教程 1

【扩展阅读:IDC:08 年 Linux PC 售额

3.2. mangle 表 【扩展信息:awk 教程 2

3.3. nat 表

3.4. filter 表

chapter 3. 表与链

这一章我们来讨论数据包是以什么顺序、如何穿越不同的链与表的。稍后,在你自己写规则时,就会知道这个顺序是多么的重要。一些组件是iptables与内核共用的,比如,数据包路由的判断。了解到这一点是很重要的,尤其在你用iptables改变数据包的路由时。这会帮助你弄明白数据包是如何以及为什么被那样路由,一个好的例子是dnat与snat,不要忘了tos的作用。

3.1. 概述

当数据包到达防火墙时,如果mac地址符合,就会由内核里相应的驱动程序接收,然后会经过一系列操作,从而决定是发送给本地的程序,还是转发给其他机子,还是其他的什么。

我们先来看一个以本地为目的的数据包,它要经过以下步骤才能到达要接收它的程序:

下文中有个词mangle,我实在没想到什么合适的词来表达这个意思,只因为我的英语太差!我只能把我理解的写出来。这个词表达的意思是,会对数据包的一些传输特性进行修改,在mangle表中允许的操作是 tos、ttl、mark。也就是说,今后只要我们见到这个词能理解它的作用就行了。

table 3-1. 以本地为目标(就是我们自己的机子了)的包

step(步骤)table(表)chain(链)comment(注释)1在线路上传输(比如,internet)2进入接口 (比如, eth0)3mangleprerouting这个链用来mangle数据包,比如改变tos等4natprerouting这个链主要用来做dnat。不要在这个链做过虑操作,因为某些情况下包会溜过去。5路由判断,比如,包是发往本地的,还是要转发的。6mangleinput在路由之后,被送往本地程序之前,mangle数据包。7filterinput所有以本地为目的的包都要经过这个链,不管它们从哪儿来,对这些包的过滤条件就设在这里。 8到达本地程序了(比如,服务程序或客户程序)

注意,相比以前(译者注:就是指ipchain)现在数据包是由input链过,而不是forward链。这样更符合逻辑。刚看上去可能不太好理解,但仔细想想就会恍然大悟的。

现在我们来看看源地址是本地器的包要经过哪些步骤:

table 3-2. 以本地为源的包

steptablechaincomment1本地程序(比如,服务程序或客户程序)2路由判断,要使用源地址,外出接口,还有其他一些信息。 3mangleoutput在这儿可以mangle包。建议不要在这儿做过滤,可能有副作用哦。4natoutput这个链对从防火墙本身发出的包进行dnat操作。5filteroutput对本地发出的包过滤。6manglepostrouting这条链主要在包dnat之后(译者注:作者把这一次dnat称作实际的路由,虽然在前面有一次路由。对于本地的包,一旦它被生成,就必须经过路由代码的处理,但这个包具体到哪儿去,要由nat代码处理之后才能确定。所以把这称作实际的路由。),离开本地之前,对包 mangle。有两种包会经过这里,防火墙所在机子本身产生的包,还有被转发的包。7natpostrouting在这里做snat。
...   下一页
 ·新学了几个命令:)    »显示摘要«
    摘要:chmod 555 scriptname (gives everyone read/execute permission)  chmod +rx scriptname (gives everyone read/execute permission)chmod u+rx scriptname (gives only the script owner read/execute permission)......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE