分页: 1 / 1

《NetBSD指南-23.5.1.配置网关/防火墙》

发表于 : 2010-03-08 0:08
leo
要使用IPNAT, “伪设备 ipfilter” 必须已经被编译进内核, 而且内核必须启用了IP数据转发选项. 要检查, 运行:

代码: 全选

# sysctl net.inet.ip.forwarding
net.inet.ip.forwarding = 1
如果结果是 “1” ,像上例一样, 则选项是启用了的, 反之, 如果是 “0” ,则选项被禁用了. 你可以做两件事:
  • 1. 编译一个启用网关的相关选项的新内核.
  • 2. 用下列命令在当前的内核中启用这些选项:

代码: 全选

# sysctl -w net.inet.ip.forwarding=1
你可以增加sysctl选项到文件 /etc/sysctl.conf 以便它们在系统启动时自动设定. 本例中你是要添加
net.inet.ip.forwarding=1
本小节的余下部分解释了怎样建立一个IPNAT配置,我们的这个配置在每次连接到供应商时被PPP连接自动激活. 用这个配置家里(这里是举例)的所有主机将可以通过这台网关电脑连接到Internet上, 即使它们不使用NetBSD.

要建立, 首先, 创建包含下列规则的文件 /etc/ipnat.conf :
map ppp0 192.168.1.0/24 -> 0/32 proxy port ftp ftp/tcp
map ppp0 192.168.1.0/24 -> 0/32 portmap tcp/udp 40000:60000
map ppp0 192.168.1.0/24 -> 0/32
192.168.1.0/24 是应该被映射的网络地址. 配置文件的第一行是可选项: 它能让FTP工作时穿过网关的限制. 第二行是用来处理正确的tcp和udp数据包; 端口映射是必需的,因为多对一的关系. 第三行用来启用ICMP, ping等.

接下来, 创建 /etc/ppp/ip-up 文件; 它将在每次PPP连接激活时被自动调用:

代码: 全选

#!/bin/sh
# /etc/ppp/ip-up
/etc/rc.d/ipnat forcestart
创建 /etc/ppp/ip-down 文件; 它将在每次PPP连接关闭时被自动调用:

代码: 全选

#!/bin/sh
# /etc/ppp/ip-down
/etc/rc.d/ipnat forcestop
ip-up 和 ip-down 两者必须可运行:

代码: 全选

# chmod u+x ip-up ip-down
现在网关计算机已准备就绪.