《IPv6详解卷1:核心协议实现》扫描版
基本信息
打开支付宝首页搜“673273051”领红包,领到大红包的小伙伴赶紧使用哦!
相关书籍
- 《计算机网络(第7版).pdf 》[]
- 《一本书读懂TCP IP》[]
- 《Solr in ActionPDF电子书免费下载》[]
- 《智慧城市:大数据、互联网时代的城市未来》[]
- 《区块链技术指南》[]
- 《12堂超级搜索术快速找到你想找的任何信息!》[]
- 《计算机网络(第6版)》电子书[]
- 《图解TCP/IP(第5版)》电子书[]
- 《WiMAX技术与应用详解》高清文字版[]
- 《IPv6技术》高清文字版[]
内容介绍
目录:
第1ç« ç»ªè®º
1.1 引言
1.2 ipv6å’Œkame的简å²
1.3 kameå‘行版概述
1.3.1 æºä»£ç æ ‘ç»“æž„
1.3.2 构建过程
1.4 bsd网络实现概述
1.5 æºä»£ç æè¿°
1.5.1 排版约定
1.5.2 æºä»£ç æè¿°ç¤ºä¾‹
1.5.3 预处ç†å™¨å˜é‡
1.5.4 网络设备与体系结构å‡è®¾
1.6 mbuf与ipv6
1.6.1 常è§çš„mbufæ“纵å®å’Œå‡½æ•°
1.6.2 mbufæ ‡ç¾
1.6.3 ipv6çš„mbufè¦æ±‚
1.6.4 诊æ–mbuf链
第2ç« ipv6ç¼–å€ä½“系结构
2.1 引言
2.2 ipv6地å€
. 2.3 ipv6地å€çš„æ–‡æœ¬è¡¨ç¤º
2.4 地å€èŒƒå›´
2.4.1 范围区域
2.4.2 区域索引
2.4.3 范围å—é™åœ°å€çš„æ–‡æœ¬è¡¨ç¤º
2.4.4 啿’站点本地地å€çš„废弃
2.5 ipv6åœ°å€æ ¼å¼
2.5.1 æŽ¥å£æ ‡è¯†ç¬¦çš„产生
2.5.2 æœ‰å…³åœ°å€æ ¼å¼çš„æ³¨è§£
2.5.3 多æ’åœ°å€æ ¼å¼
2.6 节点地å€è¦æ±‚
2.7 ipv6地å€ç©ºé—´ç®¡ç†
2.8 代ç 介ç»
2.8.1 ipv6地å€ç»“构:in6_addr{}与sockaddr_in6{}
2.8.2 å®ä¸Žå˜é‡
2.9 对范围区域的处ç†
2.9.1 范围区域的åˆå§‹åŒ–
2.9.2 范围区域id
2.9.3 地å€ç»“æž„ä¸çš„区域id
2.9.4 与范围相关的实用函数
2.10 接å£åœ°å€ç»“æž„
2.10.1 ifaddr{}和in6_ifaddr{}结构
2.10.2 in6_ifreq{}和in6_aliasreq{}结构
2.10.3 多æ’地å€ç»“æž„
2.11 ipv6å‰ç¼€ç»“æž„
2.12 åœ°å€æ“çºµç¨‹åºæ¦‚è¿°
2.13 ipv6的接å£åˆå§‹åŒ–
2.13.1 in6_if_up()函数
2.13.2 in6_ifattach()函数
2.13.3 in6_ifattach_loopback{}函数
2.13.4 in6_ifattach_linklocal()函数
2.13.5 get_ifid()函数
2.13.6 get_hw_ifid()函数
2.13.7 get_rand_ifid()函数
2.13.8 in6if_do_dad()函数
2.14 ipv6接å£åœ°å€é…ç½®
2.14.1 in6_control()函数
2.14.2 in6_update_ifa()函数
2.14.3 in6_joingroup()和in6_leavegroup()函数
2.14.4 in6_addmulti()和in6_delmulti()函数
2.14.5 in6_ifinit()函数
2.14.6 in6_ifaddloop()和in6_ ifloop_request()函数
2.15 åˆ é™¤ipv6地å€
2.15.1 in6_purgeaddr()函数
2.15.2 in6_ifremloop()函数
2.15.3 in6_unlink_ifa()函数
2.16 用地å€é…置工具进行的æ“作
第3ç« ipv6
3.1 引言
3.2 ipv6é¦–éƒ¨æ ¼å¼
3.3 ipv6扩展首部
3.3.1 扩展首部的顺åº
3.3.2 é€è·³é€‰é¡¹é¦–部
3.3.3 目的选项首部
3.3.4 路由首部
3.3.5 片首部
3.3.6 ipv6选项
3.4 æºåœ°å€é€‰æ‹©
3.4.1 默认地å€é€‰æ‹©
3.4.2 æºåœ°å€é€‰æ‹©
3.4.3 目的地å€é€‰æ‹©
3.5 代ç 介ç»
3.5.1 统计数æ®
3.5.2 首部结构
3.5.3 ip6protosw{}结构
3.6 mbufä¸çš„ipv6分组地å€ä¿¡æ¯
3.6.1 ip6_setdstifaddr()函数
3.6.2 ip6_getdstifaddr()函数
3.6.3 ip6_setpktaddrs()函数
3.6.4 ip6_getpktaddrs()函数
3.7 输入处ç†ï¼šip6_input()函数
3.8 é€è·³é€‰é¡¹é¦–部的处ç†ï¼šip6_hopopts_input()函数
3.8.1 对æ¯ä¸ªé€‰é¡¹è¿›è¡Œå¤„ç†ï¼šip6_ process_hopopts()函数
3.8.2 å¤„ç†æœªçŸ¥é€‰é¡¹ï¼šip6_unknown_opt()函数
3.9 对目的选项首部的处ç†ï¼šdest6_input()函数
3.10 已分片分组的é‡è£…
3.10.1 用于分组é‡è£…的结构
3.10.2 frag6_input()函数
3.11 对路由首部的处ç†ï¼šroute6_input()函数
3.12 转å‘:ip6_forward()函数
3.13 输出处ç†
3.13.1 æºåœ°å€é€‰æ‹©ï¼šin6_selectsrc()函数
3.13.2 路由选择:ip6_selectroute()函数
3.13.3 ip6_output()函数
3.13.4 构建扩展首部:ip6_copyexthdr()函数
3.13.5 分割首部:ip6_splithdr()函数
3.13.6 æ’入特大净è·é€‰é¡¹ï¼šip6_insert_jumboopt()函数
3.13.7 分片:ip6_insertfraghdr()函数
3.13.8 路径mtu判æ–:ip6_getpmtu()函数
3.13.9 多æ’环回:ip6_mloopback()函数
第4ç« icmpv6
4.1 引言
4.2 icmpv6报文
4.2.1 目的ä¸å¯è¾¾æŠ¥æ–‡
4.2.2 分组太长报文
4.2.3 超时报文
4.2.4 傿•°é—®é¢˜æŠ¥æ–‡
4.2.5 回é€è¯·æ±‚报文
4.2.6 回é€åº”ç”æŠ¥æ–‡
4.2.7 icmpv6报文处ç†è§„则
4.3 pmtuå‘现机制
4.4 èŠ‚ç‚¹ä¿¡æ¯æŸ¥è¯¢
4.4.1 èŠ‚ç‚¹ä¿¡æ¯æŠ¥æ–‡çš„æ ¼å¼
4.4.2 noop查询
4.4.3 支æŒçš„qtype查询
4.4.4 èŠ‚ç‚¹åæŸ¥è¯¢
4.4.5 èŠ‚ç‚¹åœ°å€æŸ¥è¯¢
4.4.6 ipv4åœ°å€æŸ¥è¯¢
4.5 代ç 介ç»
4.5.1 统计数æ®
4.5.2 icmpv6首部
4.6 icmpv6输入处ç†
4.6.1 icmp6_input()函数
4.6.2 错误通知:icmp6_notify_error()函数
4.7 pmtuå‘现的实现
4.8 icmpv6输出处ç†
4.8.1 å‘é€é”™è¯¯ï¼šicmp6_error()函数
4.8.2 错误速率é™åˆ¶ï¼šicmp6_ratelimit()函数
4.8.3 icmp6_reflect()函数
4.9 èŠ‚ç‚¹ä¿¡æ¯æŸ¥è¯¢çš„实现
4.9.1 类型和å˜é‡
4.9.2 ping6命令:å‘逿Ÿ¥è¯¢
4.9.3 ping6命令:接收应ç”
4.9.4 ping6å‘½ä»¤ï¼šæ‰“å°æ”¯æŒçš„qtype
4.9.5 ping6命令:打å°èŠ‚ç‚¹åœ°å€
4.9.6 查询处ç†ï¼šni6_input()函数
4.9.7 节点åçš„æ“作
4.9.8 创建节点地å€åº”ç”:ni6_store_addrs()函数
4.10 èŠ‚ç‚¹ä¿¡æ¯æ“作
第5ç« é‚»å±…å‘çŽ°å’Œæ— çŠ¶æ€åœ°å€è‡ªåЍé…ç½®
5.1 引言
5.2 邻居å‘现å议概述
5.3 æ— çŠ¶æ€åœ°å€è‡ªåЍé…置概述
5.4 邻居å‘现å议报文
5.5 邻居å‘现å议报文的交æ¢ç¤ºä¾‹
5.6 邻居å‘现åè®®åˆ†ç»„ç±»åž‹åŠæ ¼å¼
5.6.1 路由器请求报文
5.6.2 路由器广告报文
5.6.3 邻居请求报文
5.6.4 邻居广告报文
5.6.5 é‡å®šå‘报文
5.7 邻居å‘çŽ°é€‰é¡¹ç±»åž‹åŠæ ¼å¼
5.7.1 链路层地å€é€‰é¡¹
5.7.2 å‰ç¼€ä¿¡æ¯é€‰é¡¹
5.7.3 é‡å®šå‘首部选项
5.7.4 mtu选项
5.7.5 路由信æ¯é€‰é¡¹
5.8 下一跳判定和地å€è§£æž
5.9 邻居ä¸å¯è¾¾æ£€æµ‹ç®—法
5.10 æ— çŠ¶æ€åœ°å€è‡ªåЍé…ç½®
5.10.1 地å€çš„æž„æˆå’Œåœ°å€çжæ€
5.10.2 é‡å¤åœ°å€æ£€æµ‹ç®—法
5.10.3 处ç†è·¯ç”±å™¨å¹¿å‘Š
5.10.4 éšç§æ‰©å±•
5.11 路由器特有的æ“作
5.11.1 å‘逿œªç»è¯·æ±‚的路由器广告
5.11.2 处ç†è·¯ç”±å™¨è¯·æ±‚
5.11.3 处ç†è·¯ç”±å™¨å¹¿å‘Š
5.12 主机特有的æ“作
5.12.1 å‘é€è·¯ç”±å™¨è¯·æ±‚
5.12.2 处ç†è·¯ç”±å™¨å¹¿å‘Š
5.12.3 默认路由器选项
5.13 代ç 介ç»
5.13.1 邻居å‘现报文定义
5.13.2 邻居缓å˜ï¼šllinfo_nd6{}结构
5.13.3 æ“作å˜é‡ï¼šnd_ifinfo{}结构
5.13.4 默认路由器:nd_defrouter{}结构
5.13.5 å‰ç¼€ï¼šnd_prefix{}结构
5.13.6 å‰ç¼€æŽ§åˆ¶ï¼šnd_prefixctl{}结构
5.13.7 邻居å‘现报文选项:nd_opts{}结构
5.13.8 dad队列æ¡ç›®ï¼šdadq{}结构
5.13.9 ipv6地å€ï¼šin6_ifaddr{}结构
5.13.10 目的地缓å˜
5.13.11 æ“作常é‡
5.14 åˆå§‹åŒ–函数
5.14.1 nd6_init()函数
5.14.2 nd6_ifattach()函数
5.15 邻居缓å˜ç®¡ç†å‡½æ•°
5.15.1 nd6_rtrequest()函数
5.15.2 nd6_cache_lladdr()函数
5.15.3 nd6_lookup()函数
5.15.4 nd6_free()函数
5.15.5 nd6_timer函数
5.16 邻居å‘现å议报文处ç†å‡½æ•°
5.16.1 nd6_ns_output()函数
5.16.2 nd6_ns_input()函数
5.16.3 nd6_na_input()函数
5.16.4 nd6_na_output()函数
5.16.5 nd6_rs_input()函数
5.16.6 nd6_ra_input()函数
5.16.7 icmp6_redirect_input()函数
5.16.8 icmp6_redirect_output()函数
5.17 邻居å‘现å议报文选项处ç†å‡½æ•°
5.17.1 nd6_option_init()函数
5.17.2 nd6_option()函数
5.17.3 nd6_options()函数
5.18 默认路由器管ç†å‡½æ•°
5.18.1 defrouter_addreq()函数
5.18.2 defrouter_delreq()函数
5.18.3 defrouter_addifreq()函数
5.18.4 defrouter_delifreq()函数
5.18.5 defrouter_lookup()函数
5.18.6 defrouter_select()函数
5.18.7 defrtrlist_del()函数
5.18.8 defrtrlist_update()函数
5.19 å‰ç¼€ç®¡ç†å‡½æ•°
5.19.1 nd6_prelist_add()函数
5.19.2 prelist_remove()函数
5.19.3 prelist_update()函数
5.19.4 find_pfxlist_reachable_router()函数
5.19.5 与在链æ¡ä»¶æœ‰å…³çš„å‰ç¼€å’Œåœ°å€çжæ€
5.19.6 pfxlist_onlink_check()函数
5.19.7 nd6_prefix_onlink()函数
5.19.8 nd6_prefix_offlink()函数
5.20 æ— çŠ¶æ€åœ°å€è‡ªåЍé…置函数
5.20.1 in6_ifadd()函数
5.20.2 in6_tmpifadd()函数
5.20.3 regen_tmpaddr()函数
5.21 é‡å¤åœ°å€æ£€æµ‹å‡½æ•°
5.21.1 nd6_dad_find()函数
5.21.2 nd6_dad_starttimer()函数
5.21.3 nd6_dad_stoptimer()函数
5.21.4 nd6_dad_start()函数
5.21.5 nd6_dad_stop()函数
5.21.6 nd6_dad_timer()函数
5.21.7 nd6_dad_duplicated()函数
5.21.8 nd6_dad_ns_output()函数
5.21.9 nd6_dad_ns_input()函数
5.21.10 nd6_dad_na_input()函数
5.22 其他函数
5.22.1 nd6_is_addr_neighbor()函数
5.22.2 nd6_output()函数
5.22.3 rt6_flush()函数
5.22.4 nd6_rtmsg()函数
第6ç« ä¼ è¾“å±‚çš„å®žçŽ°
6.1 简介
6.2 ipv6上的tcp和udp
6.3 ipv6的伪首部
6.4 ipv4æ ¡éªŒå’Œä¸Žipv6æ ¡éªŒå’Œçš„åŒºåˆ«
6.5 ipv4æ˜ å°„çš„ipv6地å€çš„用法
6.6 代ç 介ç»
6.7 对pcb和套接å—的一般æ“作
6.7.1 ipv6 pcb的分é…:in_pcballoc()函数
6.7.2 绑定本地地å€ï¼šin6_pcbbind()函数
6.7.3 固定远程地å€ï¼šin6_pcbconnect()函数
6.7.4 in6_pcbladdr()函数
6.7.5 æœç´¢pcbæ¡ç›®ï¼šin6_ pcblookup_local()函数
6.7.6 æœç´¢ipv4æ˜ å°„çš„pcb:in_pcblookup_local()函数
6.7.7 æœç´¢pcbæ¡ç›®ï¼šin6_pcblookup_hash()函数
6.7.8 æœç´¢ipv4æ˜ å°„çš„pcb:in_pcblookup_hash()函数
6.7.9 分离一个ipv6 pcb:in6_pcbdetach()函数
6.7.10 控制报文信令:in6_pcbnotify()函数
6.7.11 清空pcb缓å˜è·¯ç”±ï¼šin6_rtchange()函数
6.7.12 获å–对ç‰å®žä½“地å€ï¼šin6_setpeeraddr()函数
6.7.13 èŽ·å–æœ¬åœ°åœ°å€ï¼šin6_setsockaddr()函数
6.8 ipv6上的tcp
6.8.1 ip6protosw{}的ipv6上的tcp实例
6.8.2 tcp输出
6.8.3 åˆå§‹åŒ–首部:tcp_fillheaders()函数
6.8.4 tcp输入:tcp6_input()和tcp_input()函数
6.8.5 tcp控制输入:tcp6_ctlinput()函数
6.8.6 tcp用户请求
6.9 ipv6上的udp
6.9.1 ip6protosw{}的ipv6上的udp实例
6.9.2 udp输出:udp6_output()函数
6.9.3 udp输入:udp6_input()函数
6.9.4 udp控制输入:udp6_ctlinput()函数
6.9.5 udp用户请求的处ç†
6.10 原始ipv6
6.10.1 原始ipv6统计数æ®
6.10.2 原始ipv6输出:rip6_output()函数
6.10.3 原始ipv6输入:rip6_input()函数
6.10.4 icmpv6输入:icmp6_rip6_input()函数
6.10.5 原始ipv6控制输入:rip6_ctlinput()函数
6.10.6 原始ipv6控制输出:rip6_ctloutput()函数
6.10.7 原始ipv6用户请求处ç†
6.11 对ipv4æ˜ å°„çš„ipv6åœ°å€æ“作的总结
6.12 用netstat查看ipv6连接
6.13 é…ç½®ipv4æ˜ å°„çš„ipv6åœ°å€æ”¯æŒ
第7ç« å¥—æŽ¥å—api扩展
7.1 简介
7.2 基本套接å—api
7.2.1 基本定义
7.2.2 æŽ¥å£æ ‡è¯†
7.2.3 在af_inet6套接å—上进行ipv4通信
7.2.4 地å€å’Œåå—转æ¢å‡½æ•°
7.2.5 基本套接å—选项
7.3 高级套接å—api——[rfc3542]
7.3.1 一些高级的定义
7.3.2 ipv6原始套接å—
7.3.3 辅助数æ®ä»‹ç»
7.3.4 ipv6分组信æ¯
7.3.5 处ç†ipv6扩展首部
7.3.6 路径mtu的api
7.3.7 用于一批“râ€å‘½ä»¤çš„å¥—æŽ¥å—æ‰©å±•
7.3.8 列表总结套接å—选项
7.4 ipv6套接å—apiçš„å†…æ ¸å®žçŽ°
7.4.1 代ç 介ç»
7.4.2 ip6_pktopts{}结构
7.4.3 ipv6套接å—选项处ç†ï¼šip6_ctloutput()函数
7.4.4 获å–套接å—选项:ip6_getpcbopt()函数
7.4.5 设置套接å—选项与辅助数æ®
7.4.6 清ç†ï¼šip6_freepcbopts()函数
7.4.7 ipv6多æ’套接å—选项
7.4.8 ipv6原始套接å—选项:ip6_raw_ctloutput()函数
7.4.9 icmpv6套接å—选项:rip6_ctloutput()函数
7.4.10 ä¼ é€è¾“入信æ¯ï¼šip6_savecontrol()函数
7.5 套接å—选项与辅助数æ®ç¤ºä¾‹
7.5.1 å‘é€è·¯å¾„示例
7.5.2 接收路径示例
7.6 库函数的实现:libinet6
7.6.1 inet_pton()函数和inet_pton6()函数
7.6.2 inet_ntop()函数和inet_ntop6()函数
7.6.3 getaddrinfo()函数
7.6.4 åœ°å€æŽ’åºç¤ºä¾‹
7.6.5 freeaddrinfo()函数
7.6.6 gai_strerror()函数
7.6.7 getnameinfo()函数
7.6.8 其他库函数
å‚考文献
索引
