IPv6 Radvd+Dibbler环境搭建以及使用指南

申明:本笔记仅适用于嵌入式平台路由器的IPV6环境搭建,介绍WAN口的有状态和无状态获取以及LAN侧的DHCPv6环境如何搭建

一、运行环境

操作系统平台:Windows7 + Linux,Linux内核要求要支持IPv6功能,2.6版本以上均可本

环境版本:Windows7 + Fedora20

开发板:XXX

PC:联想笔记本

 

二、背景介绍

IPv6 的地址获取方式与 IPv4 有所不同。在 IPv4 中,主机 IP 地址的自动配置必须由 DHCP 服务器来支持,这被称为有状态的自动配(Stateful Auto configuration);而在IPv6中,除了 DHCP的v6版本,还引入了无状态的自动配置(Stateless Auto configuration)。这项新技术无需 DHCP 服务器支持,所有支持 IPv6 的路由器都监听各主机发送的自动配置请求包(RS包), IPv6 路由器对这类请求包的回复数据包(RA)里面包含IPv6 地址的前缀(prefix)等信息,主机在收到这样的包以后,可以根据自己的一些已有信息(比如 MAC 地址,或者随机数),生成自己的 IPv6 地址。

除了IPv6路由器具有上述无状态分配功能,本文还另外介绍一种适合开发人员的无状态分配的环境搭建----RADVD模拟IPv6服务器完成IPv6地址自动配置。

说明:测试部人员测试WAN口IPv6功能可直接在WAN口上接一个支持IPv6的路由器进行测试,开发人员建议自己安装radvd和dhcpv6 server(wide-dhcpv6,dibbler,dhcp6s等)联合调试。本文主以radvd+dibbler为例进行介绍。

 

三、搭建自测试WAN IPv6环境

(一)安装radvd(测试WAN无状态自动获取功能)

  1、 网上下载一个radvd的最新安装包,放入linux的/home/tools目录下,下载网址:http://www.litech.org/radvd/

  2、 在linux中安装radvd。  

  cd /home/tools

  tar –zxvf radvd-2.17.tar.gz

  cd radvd-2.17

  ./configure –prefix=/usr/local –sysconfdir=/etc –mandir=/usr/share/man

  make

  make install

3、 修改配置文件(/etc/radvd.conf)。

  interface eno33554960

  {

    AdvSendAdvert on;

    AdvManagedFlag on;

    AdvOtherConfigFlag on;

    MinRtrAdvInterval 198;

    MaxRtrAdvInterval 600; 

    MinDelayBetweenRAs 3;

    AdvDefaultLifetime 1800;

    AdvLinkMTU 0;

    AdvDefaultPreference high;

 

    prefix 2008:08:08::/64

    {

      AdvOnLink on;

      AdvAutonomous on;

      AdvRouterAddr off;

      AdvValidLifetime 2592000;

      AdvPreferredLifetime 604800;

    };

    route ::/0

    {

      AdvRouteLifetime 1800;

      AdvRoutePreference high;

    };

  };

4、 修改linux网卡的IPv6设置(网卡ipv6地址必须与radvd中配置的前缀一致),如下图:

 

5、 打开linux ipv6路由转发功能,并启动radvd。

  echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

  radvd –C /etc/radvd.conf

6、 设置linux网卡桥接到windows的测试网卡(在此将windows测试网卡命名为“TEST”)。

7、 路由器WAN口连接到windows的“TEST”网卡,设置WAN口IPv6地址获取方式为无状态自动获取。

 

 

 

8、 设置成功后,查看WAN口是否获取到上述radvd配置的前缀为2008:8:8::/64的global address,获取到的地址后64位是通过EUI64算法得出或者随机数生成。

9、 获取到地址后,在串口执行ping命令,ping radvd所在系统的网卡地址(2008:8:8::1),若能ping通,说明WAN口IPv6无状态自动配置功能已实现。

 

 

 

(二)安装Dibbler(测试WAN有状态自动获取功能)

1、 安装完成之后默认安装在C:\dibbler,安装文件:dibbler-1.0.0-win32.exe。

2、 安装完成之后,修改配置文件,修改方法:

  开始->所有程序->Dibbler->Server Edit Config File->修改server.conf。

3、 修改配置文件,server.conf。

 

 server.conf:

   log-level 7

  log-mode short

  iface "TEST"

  {

    # clients should renew every half an hour

    T1 1800

    T2 2000

    class

    {

         pool 2008:08:08::1000-2008:08:08::2000

    }

    option dns-server 2008:08:08::2

    option domain example.com, test1.example.com

   }

4、 修改dibbler所在系统的IPv6设置(网卡ipv6地址必须与server.conf的DNS一致),如下图:

 

5、 启动dibbler-server,启动方法如下:

开始->所有程序->Dibbler->Server Run in console

6、 启动dibbler-server成功,如下截图所示:

 

7、WAN口连接到windows的“TEST”网卡,设置WAN口IPv6地址获取方式为有状态自动获取。

 

8、 设置成功后,查看WAN口是否获取到上述dibbler配置的2008:08:08::1000-2008:08:08::2000/64的global address,是否获取到网关地址,DNS地址等,查看设备路由表是否有IPv6的路由信息。

 

 

9、 获取到地址后,在串口执行ping命令,ping dibbler所在系统的网卡地址(2008:8:8::2),若能ping通,说明WAN口IPv6有状态自动配置功能已实现。

 

 

 

四、 搭建自测试LAN IPv6的环境

(一) 启动LAN IPv6相关服务

1、 打开IPv6功能(默认是打开的)。

2、 设置LAN IPv6地址。

LAN IPv6地址必须是与开发板中RADVD设置的前缀(前64位)保持一致(3000:db8:1::1/64),RADVD参数可通过flash命令获取,

后续路由器页面会优化让用户不能修改LAN IPv6的前缀,只能修改后面的主机位。

3、 设置DHCPv6。

打开DHCPv6开关;

设置DHCPv6地址池:地址池前缀必须与LAN IPv6前缀一致;

设置DNS地址:DNS地址必须为LAN口的Link Local地址。

 

(二)测试DHCPv6功能

PC接到路由器的LAN口,PC网口IPv6设置成自动获取。若PC能获取到路由器分配的IPv6地址、 网关、DNS。

且PC能ping通 路由器 LAN IPv6地址、路由器WAN IPv6地址。则功能OK 。

 

 

 

 

 

五、 数据包

 

 

 

 

 

posted @ 2020-11-04 11:31  我是一个啰啰  阅读(3585)  评论(0编辑  收藏  举报