主要由於ipv4擁有位址空間資源短缺的侷限性,ipv6將會成為新一代的網路應用技術規範.所以下面介紹一下ipv6
一、ipv6
位址結構定義 }
ipv6
有128
位的位址結構。
例: fffe:ffee:ff22:12:7e:89:e3:10
ff01:0:0:0:0:0:0:101
等價於ff01::101
}2.子網掩碼表示的不同
ipv6
更習慣用掩碼的長度來表示子網掩碼。
例:輸入
ifconfig
命令會看到這樣的位址表示方式:
fffe:ffee:ff22:12:7e:89:e3:10/64
64 就是子網掩碼的長度,這是為了表示的方便。相當於
ffff: ffff: ffff: ffff::0
}3.ipv6
位址分類
a.ipv6
位址分為單播位址、泛播位址、多播位址。和
ipv4
相比,取消了廣播位址型別,增加了泛播位址類
型;沒有了位址劃分
.
b. 多播位址格式字首為
1111 1111
, c.
}4.ipv6
中特殊的位址
a. 未指定的
ipv6
位址
格式0::0
b.ipv6
環迴位址
格式::1
。此位址與
ipv4
中的127.0.0.1
類似
所有格式字首不是多播格式字首(
1111 1111
)的ipv6
位址都是
ipv6
單播格式(泛播和單播格式相同)
連續出現的0可用
::代替,但
::只能出現一次
1.位址格式
二、ipv6
常用命令
1.linux#ifconfig
inte***ce
inet6 add
ipv6-address/prefixlength
使用ifconfig命令給指定介面分配乙個靜態ipv6位址。inet6 add引數指定新增乙個ipv6位址,
ipv6-address
是分配給介面的靜態位址,
prefixlength
引數定義字首的長度
2.linux#ip -f inet6 addr add
ipv6-address/prefixlength
dev i
nte***ce
使用ip命令給指定介面分配乙個靜態ipv6位址。-f inet6 addr add引數指定新增ipv6位址,ipv6-
address是分配給介面ipv6位址,prefixlength引數定義字首的長度,dev引數標識給定的介面
inte***ce。這個命令和前面的命令提供同樣的結果
給介面eth0分配乙個字首長度為64位元的靜態ipv6位址fec0:0:0:0::1
3.linux上新增預設ipv6路由的route和ip命令
linux#route -a inet6 add ::/0 gw
gateway
[dev
inte***ce]
linux#ip -f inet6 route add ::/0 via
gateway
[dev
inte***ce]
使用ipconfig的例項:
linux#route -a inet6 add ::/0 gw fe80::260:3eff:fe47:1533 dev eth0
使用ip的例項:
linux#ip -f inet6 route add ::/0 gw fe80::260:3eff:fe47:1533 dev eth0
使用ifconfig的例項:
linux#ifconfig eth0 inet6 add fec0:0:0:0:1::1/64
使用ip的例項:
linux#ip –f inet6 addr add fec0:0:0:1::1/64 dev eth0
三、開發中的注意事項
1.socket程式設計
增加標頭檔案
struct sockaddr ;
struct sockaddr_in6 ;
struct in6_addr ;
例子:struct sockaddr_in6 local;
local.sin6_family = af_inet6;
local.sin6_addr = in6addr_any;(相當於ipv4的inaddr_any);
local.sin6_port = port;
skt=socket( af_inet6, sock_dgram, 0 );
bind( skt,(struct sockaddr *)&local, sizeof(local);
connect( skt, (struct sockaddr *)& local, sizeof(local) );
轉換字串到網路位址
int inet_pton(int af, const char *src, void *dst); 第乙個引數af是位址族,轉換後存在dst中
例:
struct in6_addr m_ip;
inet_pton(af_inet6,」ff::1」, &m_ip);
轉換網路位址成字串 const char *inet_ntop(int af, const void *src, char *dst, socklen_t cnt); 這個函式轉換和上面的只是多了乙個引數socklen_t cnt,他是所指向快取區dst的大小,避免溢位
IPv6技術 什麼是IPv6
ipv6技術 1 引言 ipv4位址即將耗盡,因此需要移轉至ipv6的討論,過去數年來一直不曾中斷。ipv4和ipv6在報文結構 報文字段意義以及位址配置諸多方面都有顯著的不同,這給從ipv4到ipv6過渡時期internet的運作帶來了極大的困難。當前接入網技術上幾乎所有的應用都是構建在ipv4上...
IPv6協議介紹
ipv6最為顯著的改變是ip位址的改變,它提供了128位元的位址,相比於傳統的ipv4的32位元位址,理論上的位址空間擴大了2 96倍。除了龐大的位址空間外,ipv6支援分級位址模式 高效ip包頭 服務質量 主機位址自動配置 認證和加密等多項技術,解決傳統ipv4網路實際執行中遇到的問題。2012年...
IPv6技術簡要解析
ipv6是internet protocol version 6的縮寫,其中internet protocol譯為 網際網路協議 ipv6是ietf 網際網路工程任務組,internet engineering task force 設計的用於替代現行版本ip協議 ipv4 的下一代ip協議。目前i...