Linux服务器承担整个校园网访问因特网的网关,在Linux环境中,有一个非常灵活的IP过滤工具是iptables,这个工具在使用的时候可以设置多个条件同时满足才允许通过IP数据,利用这个功能就可以实现地址绑定功能。设计理念是只有IP地址和MAC地址同时满足条件时才允许数据转发,命令如下:
iptables -P FORWARD DROPiptables -A FORWARD -s 192.168.6.200 -m mac --mac-source 00:11:5B:EF:7A:D8 -j ACCEPTiptables -A FORWARD -s 192.168.6.201 -m mac --mac-source 50:78:4C:4A:46:C0 -j ACCEPTiptables -A FORWARD -s 192.168.6.202 -m mac --mac-source 00:10:5C:E4:A8:50 -j ACCEPT 上面第一行是转发策略,意思是没有指定的转发链是禁止转发任何数据的。第二行表示只有满足IP地址是192.168.6.200同时MAC地址为00:11:5B:EF:7A:D8才允许转发,类似的第三、四行分别绑定的是192.168.6.201和192.168.6.202。每台机器对应这样一行,就可以实现所有机器IP地址与MAC地址的绑定。解除绑定状态只要把上面命令行中的-A替换为-D就可以删除本转发链,同时还要把转发策略改为ACCEPT。以上的命令需要配合POSTROUTING链才可以实现上网功能。