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 。

 

 

 

 

 

五、 數據包

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM