FreeBSD+IPFILTER实现整网(N个Vlan)透明代理上…

2009-05-13 12:28:40来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

1:前言
我们学校以前是用的教育网,所有办公机器、机房用的都是公网地址,由于前段时间更换网络出口,换为网通的宽带,所以才作了代理,因为学校领导还没完全确定以后还用不用教育网,所以要求下面机器原来的网络设置不能改变,经过自己摸索,加上CU、freebsdchina上面的各位高手帮忙,现在已经全部搞定,实现了透明代理,下面的机器网络设置跟以前用教育网的一样,可以随时再开通教育网,不敢独享,拿出来给大家看看。
另外一点说明,原来的公网地址因为当作私有地址来用了,我下面贴出来的代码均以10.0.*.*这些私网地址代替,这样可能其他兄弟们用的时候更合适一些,外部网通个的公网地址我以a.b.c.d和a1.b1.c1.d1等代替,如果要参考我的使用可换为你们的公网ip。
2:系统安装
用的是最新的5.3release,用最小化安装,因为后面要自己编译内核,就把内核sys装上了,man也是需要的,其他的都不要,因为只作代理,所以连ports都不要。
3:/etc/rc.conf里面的设置
这里要说明一下:我们的内部地址总共用了12个c的地址,10.0.40.0/21和10.1.44.0/22。为了实现整网的机器都能透明的通过代理服务器上网,需要在路由器上把默认路由指向代理服务器的内网网卡地址,我们这里的核心交换是cisco6509,就是一条语句:ip route 0.0.0.0 0.0.0.0 192.168.0.1,这样做还不够,还需要在代理服务器上添加路由,把数据包经由内网网卡返回。代理的内网卡地址我设置的192.168.0.1,它所在vlan网关是192.168.0.2,掩码是255.255.255.252,这个vlan也就192.168.0.1这个地址可用J
下面是rc.conf的内容,我加入了一些优化的选项:
ifconfig_em0="inet a.b.c.d netmask 255.255.255.240"
ifconfig em0 a1.b1.c1.d1 netmask 255.255.255.255 alias
ifconfig_em1="inet 192.168.0.1  netmask 255.255.255.252"
sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
## 关闭SENDMAIL
portmap_enable="NO"
inetd_enable="NO"
kern_securelevel_enable="YES"
kern_securelevel="2"
syslogd_enable="YES"
syslogd_flags="-ss"
firewall_enable="NO"
gateway_enable="YES"
ipfilter_enable="YES"
ipfilter_program="/sbin/ipf"
ipfilter_rules="/etc/ipf.conf"
ipfilter_flags=""
#IPFilter作为kernel,而不是作为模块
ipnat_enable="YES"
ipnat_program="/sbin/ipnat -CF -f"
ipnat_rules="/etc/ipnat.conf"
ipmon_enable="YES"
ipmon -o N >; /tmp/nat.log &
static_routes="static1 static2"
route_static1="-net 10.0.40.0 -netmask 255.255.248.0 -gateway 192.168.0.2"
route_static2="-net 10.1.44.0 -netmask 255.255.252.0 -gateway 192.168.0.2"
4:我的ipf.conf文件:

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:使用pw管理用户和组

下一篇:FreeBSD下常见声卡的安装方法