2010年5月11日 星期二

Linux的IPv6設定教學

Linux的IPv6設定教學


完整理解架設原理的翻譯文件-Linux IPv6 HowTo:http://www.linux.org.tw/CLDP/OLD/Linux-IPv6-HOWTO.html
不想看中文的另一個選擇:http://forskningsnett.uninett.no/ipv6/IPv6hostslinux_fedora.html

----以下內容主要出自於個人對上述文件的整理(順便唸一下,台灣NGN的Linux教學肯定不是寫給我看的,都不用設定就能直接用,太強了啦Orz)----


輸入指令modprobe -c | grep ipv6
可以檢查核心預設是不是已啟動了IPv6的服務。(看到alias net-pf-10 ipv6就對啦~)

以筆者的CentOS主機為例,通常已預設安裝好相關服務,進行以下設定即可:
1./etc/sysconfig/network
當中應該加入有
NETWORKING_IPV6=YES
IPV6_DEFAULTGW=2001:288:4677::FF     #設置輸入自己區段的Default Gateway
#IPV6FORWARDING=yes                        #IPv6轉發功能,有用到才加.
2./etc/sysconfig/network-scripts/ifcfg-eth0當中加入以下位置   (如果多張網卡,請自行比照辦理)
IPV6INIT=yes                                          #啟用這個interface的IPv6功能,一定要!
IPV6ADDR=2001:288:4677::225                #給予此interface的位址,參照IPv6應遵循的規則填入
#IPV6ADDR_SECONDARIES="3ffe:ffff:0:1::1"   #如果另外對內想要有私有IP請拿掉#並自行填入IP
IPV6_AUTOCONF=no                              #如果是自動抓取請將改為yes,而Address部份最前面就加上#(此選項預設為: yes if IPV6FORWARDING=no, no if IPV6FORWARDING=yes)
3.重新啟動網路,輸入service network restart  (當然,也可以用/etc/init.d/network restart)

完成!


*fe80::/64也就是所謂的IPv6 link-local 位址,即本地端位置,所有真正連出去的IP應該要有像2001:288:4677::(前64個bits)這樣子的Global Routing Prefix.沒搞懂的人請看這一篇.

-----------------------------------------------------

如果還想更進一步的朋友,可以使用系統內建的基本工具檢查一下.(通常核心有IPv6 , /sbin/ 下面就會裝好工具可以用啦~)
相關指令:
# ping6 [-I < device >] < link-local-ipv6address >          (不用說,這就是一定要會的ping指令啦!)
# traceroute6 www.ipv6.hinet.net                                (測網路節點用,和windows底下的tracert指令差不多的用途)
# tracepath6  www.ipv6.hinet.net                                (追蹤MTU的路徑)
# tcpdump
# ifconfig
# ip addr
# ip -6 route show dev <device>
# host -t AAAA www.ipv6.hinet.net
# telnet ::1 80                                                             (telnet一樣有效,別懷疑!)
# route -A inet6
-------------------------------------------------------
實際操作過程:
1.用來檢測IPv6是否啟動的指令:
    ifconfig
    ip addr
    ip -6 addr show dev <device>  (這個指令很不錯,只會乾脆的將scope global 、scope global dynamic 、scope link三個位址寫出來)
2.查詢Default Gateway
    ip -6 route (最後一行裡的default via後面接的fe80::224:73ff:fe02:f701 dev eth0這種東西就是了...不想看到太多字的請下ip -6 route show dev eth0這個指令)
    接下來就可以ping看看Gateway通不通囉
    ping6 -I eth0 fe80::224:73ff:fe02:f701
3.再看看連外能力
    路由前導碼測試(Global Routing Prefix,就是前面ip -6 route裡default via後面接著的2001:288:4677::ff)
    ping6 2001:288:4677::225
    連外測試
    ping6 www.ipv6.hinet.net
4.Dns測試
    host -t AAAA www.ipv6.hinet.net
5.海龜測試
    請上http://www.kame.net/ ,看看海龜會不會動吧!

沒有留言:

張貼留言