周喜平 姜 斌
[摘要]以Iptables作为网关来实现中小型局域网的内网机器上网,将内网用户的帐号和IP地址绑定,通过修改Iptables的规则以及修改Netfilter的代码来控制内网用户上网;系统在计费的同时还可以实现域名和关键字过滤以及内网的防火墙,实现成本低,安全系数较高。
[关键词]Iptables网络计费
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1110090-01
一、引言
计费管理是网络管理的五大功能之一(故障管理、计费管理、配置管理、性能管理、安全管理)。常见的计费管理的实现方法有三种[1]:通过路由器进行计费、通过代理服务器进行计费和基于监听的计费。本文采用类似第二种计费实现方法即基于网关的实现方式。基于网关的实现方式较之基于代理服务器的实现方式的基本原理是相似的,就是在内网和Internet
网络之间建立网关(类似于代理服务器的功能),通过这个网关来实现内网用户访问Internet。所不同的是可以把网关设置成“透明网关”,即内网用户只要设置网关的IP地址就可以通过网关来访问Internet,而无需像代理服务器的实现方法那样过多的设置其他参数。本文以Linux系统中的Netfilter来实现“透明网关”,通过Netfilter和Iptables来完成内网用户访问Internet,同时实现对这些用户的上网控制和计费。
二、设计思路
Netfilter是Linux内核的一个完善的且功能强大的防火墙子系统,Iptables 是与最新的版本Linux 内核集成的IP信息包过滤系统,或者可以简单理解为Netfilter是Linux内核的一部分,而Iptables则是Linux提供给用户的一种工具,通过这种工具可以很好的处理内核中的防火墙的各种信息处理规则,利用Netfilter和Iptables可以实现NAT(Network Address Translation)。……