NAT64采用tayga实现,DNS64采用bind9.8实现。
1 平台搭建
平台为ubuntu12.04 Desktop版本。正常安装即可。
2 NAT64 (tayga)
2.1 安装
在终端模式下输入
sudoapt-get install tayga
2.2 配置
2.2.1 相关设置
Sudo gedit /etc/tayga.conf
按照说明配置,目前实现方案不需要修改。
2.2.2 创建、启动设备
tayga–mktun
iplink set nat64 up
2.2.3 地址、路由配置
ip addr add192.168.0.1dev nat64(修改为本机IPv4地址)
ip addr add2001:db8:1::1dev nat64 (修改为本机IPv6地址)
ip route add 192.168.255.0/24 dev nat64(不需要修改)
ip route add 2001:db8:1:ffff::/96 dev nat64(不需要修改)
2.2.4 启动IPv4、IPv6转发
sysctl -w net.ipv4.conf.all.forwarding=1
sysctl -w net.ipv6.conf.all.forwarding=1
2.2.5 启动tayga
tayga
可使用tayga –d进入debug模式。
ping6 2001:db8:1:ffff::192.168.0.1((修改为本机IPv4地址))
2.2.6 NAT44 设置
iptables -t nat -A POSTROUTING -s192.168.255.0/24 -j SNAT --to-source192.168.0.1(修改为本机IPv4地址)
iptables-A FORWARD -s 192.168.255.0/24 -i nat64 -j ACCEPT
3 DNS64 bind9
3.1 安装
sudo apt-get install bind9
3.2 配置
sudo gedit /etc/bind/named.conf.options
修改为如下:
options {
directory "/var/cache/bind"
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk.Seehttp://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addressesreplacing
// the all-0's placeholder.
listen-on-v6 { any}
allow-query { any}
dns64 2001:db8:1:ffff::/96 {
clients { any}
}
forwarders {
159.226.8.7
}
//=================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys.See https://www.isc.org/bind-keys
//================================================================
dnssec-validation auto
auth-nxdomain no#conform to RFC1035
listen-on-v6 { any}
}
修改完成后,输入named.conf查看修改是否成功。
3.3 启动bind9
Bind9默认安装后开机启动。设置完成后,输入
/etc/init.d/bindrestart
4 使用
4.1 Windows
用管理员权限进入cmd,输入
netsh
>interfaceipv6
>add route 2001:db8:1:ffff::/96 "本地连接"2001:db8:1::1(修改为机器的ipv6地址)(为服务器的ipv6地址)
然后设置DNS服务器为NAT64地址即可
4.2 Linux
添加路由
ip route add 2001:db8:1:ffff::/96 via2001:db8:1::1(修改为机器的ipv6地址)
然后设置DNS服务器为NAT64地址即可(为服务器的ipv6地址)
服务器地址:192.168.130.42
2400:dd01:1001:130:250:c2ff:fe23:f051/64
>�0:H�+
2011年2月3日悄无声息的到来又逝去,这一天看似普通,但对互联网人士来说,却非比寻常,无论他们是否知晓,这一天却是一个里程碑。在那个周四,互联网数字分配机构(IANA)将最后可用的IPv4地址分配殆尽。虽然某些地区的互联网注册管理机构(RIR)还有够一两年使用的库存,但全新IPv4地址分配的时代已基本成为历史。
既然IPv4已经用尽,那么是时候认真考虑采用下一代互联网协议IPv6了。当前,每小时就会增加一百万台新设备,而IPv6具有128位的地址空间(IPv4具有32 位空间),可以适应互联网当前及未来的发展需求。实际上,与IPv4的43亿个IP地址相比,IPv6可以再增加340万亿万亿万亿地址,足以满足可预见未来的全球互联网需求。
随着DNS安全扩展协议(DNSSEC)的持续部署,IPv6将为未来互联网提供稳定而安全的基础。但是,要实现从IPv4向IPv6的成功过渡,无论是基础架构运营商、服务提供商,还是应用开发人员与用户,所有人都必须在一系列工作中团结合作,这些工作包括:
· 支持并开发IPv6能力,并建立与IPv4相当的功能
· 调试并修正那些仅使用IPv6的新软件与应用程序中的问题
· 改善与IPv4的交互工作与过渡共存问题
安全性将成为这一工作的关键。IPv6为大多数互联网参与者展示了新的疆界,它的出现也将带来一些独特的安全挑战。虽然下述内容并不完全,但它给出了八个需要注意的问题领域,业界需要在采用IPv6的过程中,不断地解决这些问题。要知道我们仍然处于采用的初级阶段,所以某些风险的解决方案只能来自于被实际应用所证明的最佳实践。
1、从IPv4向IPv6的转换过程中,事务处理(Transaction)可能更容易受到攻击。由于IPv4与IPv6并非“逐位 (bits on the wire)”地兼容,因此协议转换就成为更广泛的部署与采纳的一种途径。从IPv4到IPv6的转换中,当转换流通过网络时,必然产生需要协调事务处理。设想一个邮局的信件分拣员,他必须打开每个IPv4信封,再将每封信装入一个IPv6信封中,以确保它能投递到正确的地址,此时要修改文件包含的内容,从而使之与新的IPv6信封外的信息相符。每做一次这个操作,都给执行不善和执行不力者提供了一个机会,从而产生或触发一个潜在的漏洞。另外,这种方法引入了必须维护事务处理状态的中间环节(middle boxes),使网络复杂化,从而危及了端到端的原则。通常情况下,安全人员应注意所有转换与事务处理机制(包括隧道)的安全问题,只有经过了彻底评估以后,才能明确地启用这些机制。
2、大网络段既有优点也有缺点。IPv6的网络段规模要远远大于我们现有的网络段。现在,为一个IPv6子网络推荐使用的前缀长度为/64 (264),它可以在一个网络段中容纳约18 x 1018个主机!虽然这能够实现几乎无限制的LAN长度,但这一规模也带来了挑战。例如,扫描一个IPv6/64块网络的漏洞要花数年时间,而扫描一个/24的IPv4子网(28)只需花几秒钟。既然不可能做完整的扫描,那么比较好的办法或许是只使用地址的前/118(与一个/22的IPv4中主机数量相同),缩小要扫描IP的区间范围,或者明确地分配掉所有地址,并且暗中拒绝余下的所有地址。这样便可以做到细致的IP管理,以及较今天而言更为严格的监控。另外还可以预测到,攻击者可能将采用被动式域名系统(DNS)分析以及其它侦测技术来代替传统的扫描方法。
3、邻居发现及请求都可能使网络出现问题。IPv6中的邻居发现(Neighbor Discovery)使用了五种不同类型的第6版互联网控制信息协议(ICMPv6),用于多种目的,如在链接中包含可确定邻居的链路层地址,清空已失效的缓存值,以及发现那些想要自己转发分组数据包的邻居。虽然邻居发现提供了很多有用的功能,包括重复地址检测(DAD)以及对不可及邻居的检测(NUD),但它也给攻击者提供了很多机会。IPv6中的邻居发现攻击将很快取代IPv4中的同类攻击,如ARP Spoofing攻击。一般而言,除非明确地提供并实现了链路层访问控制以及安全机制,否则保持所有端口的关闭是一个好主意,而且要在不使用IPv6时,将其完全禁用。
4、阻塞大型扩展头、防火墙与安全网关,可能成为DDoS攻击者的目标。在IPv6中,IP选项功能已被从主头中移出,而通过一组附加头来实现。这些附加头叫做扩展头,其定义了一组目标选项、逐跳跃(hop-by-hop)选项、身份认证,以及一个其它选项的数组。这些扩展头跟随着固定为40字节的IPv6主头,它们相互链接,构成一个IPv6分组数据包(固定头 + 扩展头 + 有效负载)。有大量扩展头的IPv6流会淹没防火墙和安全网关,甚至会致使路由器转发性能下降,因此成为了DDoS和其它攻击者的一种潜在动力。在路由器上禁用“IPv6源路由(IPv6 source routing)”可能是防止DDoS威胁的必要方式,并且明确地写明支持哪种扩展头,以及检查网络设备的正确实现,这些都很重要。一般而言,IPv6增加了很多需要过滤或区域性传播的部件,包括一些扩展头、组播地址,以及增加了互联网控制信息协议(ICMP)的使用。
5、6to4和6RD代理可能会导致攻击与滥用行为。6to4及其ISP快速部署的6RD均无需配置专用的隧道,就能使IPv6数据包跳出IPv4的空间。但部署IPv6代理服务器可能会使代理运营商进入一个麻烦的世界,包括发现式攻击、欺骗,以及反射式攻击,而代理运营商自身可能被利用,成为一个攻击和滥用的“源头”。
6、对IPv6服务的支持可能暴露现有的IPv4应用程序或系统。有一个局限便是,现有的安全补丁可能仅适用于IPv4支持,而大多数核心程序在做DNS查表等动作时,偏向于优先采用IPv6接口(而不是IPv4),以促进IPv6的更快部署。实际上,IPv6与IPv4之间的这种互动可能使每次DNS查表的流量翻番(同时请求AAAA和A记录,或更糟糕的情况,即每次都要通过IPv4和IPv6)。为了优化用户体验,可能产生出大量非必需的DNS流量。OS与内容供应商在不断采用措施,以减轻或优化这个性能(如:AAAA白名单),但它也增加了系统负荷和状态。另外应注意到,使用新的IPv6栈后,肯定会逐步显现新的漏洞。一个过渡周期内长期存在两个栈,以及路由器、最终系统与网络服务(如DNS)之间的相互依存,显然会为犯罪分子提供充分施展的空间。
7、很多用户可能被隐藏在固定地址集后面。被大型网络地址转换协议(NAT-PT)设备所隐藏的用户可能会废除一些有用功能(如地理定位)或工具,使恶意网络行为有了空间,并且让基于信誉的号码与命名空间的安全控制问题更为严重。
8、与其它网络做隧道操作时,即使IPSec也可能带来问题。IP安全机制(IPSec)能够对发送者做出认证,提供完全的保护,并且可选采用加密的IP分组数据包以提供传输数据的可信性。IPSec在IPv4中是一个可选功能,而在IPv6中是强制使用的。在隧道模式下(基本上是建立一个网络间、主机—网络和主机间通信的VPN),整个数据包被封装在一个新的IP包内,并给它一个新的IP头。但当与某个超出原发方控制的网络建立VPN连接时,则可能产生安全性暴露问题,或被用于漏出数据等。由于IPSec要用附加协议(如互联网密钥交换–IKE)去处理对安全保护以及相关安全密钥的协商与管理,从而增加了复杂性,因此IPv6初期对IPSec支持的广泛程度也许并不会超过IPv4。
在IPv6开始广泛部署且IPv4设备开始减少以前,还会有一段时间。到那时,我们都将致力于可实现互联网第40亿台设备的协议。
2月3日这个里程碑的日子已成历史,我们将别无选择地去发展和传播一些最佳实践,从而使下一代IP地址更加稳定、可靠和安全,而它的开始要依赖网络与安全人员的认知与知识。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)