易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux iptables 端口 映射案例

iptables是一个
Linux
下优秀的nat+防火墙工具,我使用该工具以较低配置的传统pc配置了一个
灵活强劲的防火墙+nat系
统,小有心得,看
了网上也有很多这方面的文章,但是似乎要么说的比较少,要么就是比较偏,内容不全,容易误导,我研究了一段时间的iptables同时也用了很久,有点滴
经验,写来供大家参考,同时也备日后自己翻阅。
首先要说明的是,iptables操作的是2.4以上内核的netfilter.所以需要 linux的内核在2.4以上。其功能与安全性远远比其前辈
ipfwadm,ipchains强大,iptables大致是工作在OSI七层的二、三、四层,其前辈ipchains
不能单独实现对tcp/udp
port以及对mac地址

的定义与操作,所以我想ipchains应该是仅仅工作在三层上的。
我们
先简单介绍一下
netfilter的大致工作流程,也就是一个数据包(或者叫分组、packet,我个人习惯叫包)在到达linux的网络接口的时候
(网卡)如何处理这个包,然后再介绍一下如何用iptables改变或者说控制对这个数据包进行操作。netfilter内部分为三个表,分别是
filter,nat,mangle,每个表又有不同的操作链(Chains)。在filter(过滤)表中,也就是他的防火墙功能的这个表,定义了三个

Chain。分别是INPUT,FORWARD,OUTPUT。也就是对包的入、转发、出进行定义的三个过滤链。对于这个filter表的操作和控制也是
我们
实现防火墙功能的一个
重要手段;在nat(Network Address
Translation、网络地址翻译)表中,也就是我们用以实现地址转换和端口转发功能的这个表,定义了PREROUTING,
POSTROUTING,OUTPUT三个链,下面我们会对这三个链作详细的说明;而netfilter的mangle表则是一个自定义表,里面包括上面

的filter以及nat表中的各种chains,它可以让我们进行一些自定义的操作,同时这个mangle表中的chains在netfilter对包

的处理流程中处在一个比较优先的位置,下面有一张图清晰的描绘了netfilter对包的处理流程(该图摘自网上,不知作者是谁,在此深表敬意!),一般
情况下,我们用不到这个mangle表,在这里我们就不做介绍了。
大家可以看到,PREROUTING这个chain在最前面,当一个包来到linux的网络接口的时候先过mangle的PREROUTING,然后是
nat的PREROUTING,从这个chain的名字我们可以看出,这个chain是在路由之前(pre-routing)要过的。为什么要在路由之前
过呢?大家可以看到这个图上,上面有一个菱形的部分叫ROUTING,这个ROUTING部分就是Linux的route


相关文档:

linux网络设备驱动

网络设备结构体:
struct sk_bufff{}
它的定义在linux/skbuff.h中
sk_buff 中有三部分协议头分别命名为“h,nh,mac”
h:为传输层协议(ICMP,IGMP)。
nh:为网络层协议头。
mac:链路层协议头。 三个协议头是使用联合体的,原因是,协议本身是互斥的。 结构体的定义可以看头文件或是《内核 ......

LINUX下的一些家压缩安装命令

在fedora下解压.deb文件(没安装dpkg):
ar p filename.deb data.tar.gz | tar zxvf -
其它压缩文件的解压
#tar xv file.a
#uncompress file.Z
#gunzip file.gz
#bunzip2 file.bz2
#tar xvZf file.tar.Z 
#compress -dc file.tar.Z | tar xvf -
#tar xvzf file.tar.gz 
#gzip -dc file.tar.gz | tar ......

Linux USB gadget设备驱动解析(2) 驱动调试

      本文主要把在实现“linux模拟U盘功能”过程中的一些调试过程记录下来,并加以解析。
一、背景知识
    1、USB Mass Storage类规范概述

       USB 组织在universal Serial Bus Mass Storage Class ......

linux framebuffer驱动全篇

本文详细介绍如何编写一个显卡的驱动程序。
framebuffer
device在内核里面作为显卡驱动模型,许多函数和数据结构都是特定,正是这些特定的东西为我们的编程提供了方便。
要开发frame buffer
device驱动,你应该阅读Source\Source\Documentation\fb下面的说明文件,三个重要文件00-
INDEX,framebuffer.txt,internal ......

在Linux下安装OpenCV

搞了三天的OpenCV终于把这个类库加上去了。原本是使用Red Hat Linux 9,但是强烈不推荐,因为基本上很多很多的软件都要重新升级更新。gcc必须升级到4.x,则gmp和mpfr也要更新,make也要到3.8版本,并且glibc也必须在2.6版本。编译gcc实在是太痛苦了,无比无比的痛苦,耗时3个多hours,还是来了个error(glibc必须升级)。编 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号