我有一个OpenBSD PF防火墙,我已经添加了一个IPv6隧道(使用HE.net tunnelbroker )。
我可以从防火墙ping / traceroute IPv6地址。 现在我想为我的防火墙后面的服务器提供IPv6服务。 他们都有公共IP地址(我没有使用任何types的NAT)。 所以我希望能够给他们IPv6地址的隧道给路由的IPv6前缀,并有正确的stream量通过OpenBSD上的隧道(gif0接口)的stream量。
其他一些细节。 这基本上是一个透明的防火墙,虽然外部接口确实有一个IP地址进行pipe理。 我需要添加一个IPv6地址到内部接口,以提供路由,或者我可以透明地路由一切通过隧道接口? PF规则对于IPv6stream量来说会是什么样子?它们与正常的IPv4 PF规则有什么不同?
我find了这个页面 ,但是它已经很老了(对于OpenBSD 2.9来说,已经快10年了)。 我正在寻找适合我的情况的更新说明。
编辑 :随着下面接受的答案,我需要添加以下PF规则来获取传入的stream量工作:
tunnelserveripv4address="xx.xx.xx.xx" # This is the IPv4 HE.net tunnel endpoint ext_if="em0" pass in proto 41 from $tunnelserveripv4address to $ext_if keep state pass out proto 41 from $ext_if to $tunnelserveripv4address keep state
首先,您应该将LAN NICconfiguration为路由(!)/ 64的地址; ::1是一个理想的候选人。 然后,启动LAN接口上的radvd – 它不应该需要任何configuration。
PF不起任何作用,或者说确保它不会阻碍。