王朝网络
分享
 
 
 

IPv6详解(卷2):高级协议实现(英文版)(图灵原版计算机科学系列)

王朝导购·作者佚名
 
IPv6详解(卷2):高级协议实现(英文版)(图灵原版计算机科学系列)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  参考价格: 点此进入淘宝搜索页搜索
  分类: 图书,计算机与互联网,网络与通讯,网络协议,
  品牌: Qing Li

基本信息·出版社:人民邮电出版社

·页码:937 页

·出版日期:2009年

·ISBN:7115195196/9787115195197

·条形码:9787115195197

·包装版本:1版

·装帧:平装

·开本:16

·正文语种:英语

·丛书名:图灵原版计算机科学系列

产品信息有问题吗?请帮我们更新产品信息。

内容简介《IPv6详解.卷2:高级协议实现》全面讲解IPv6及相关协议实现的事实标准KAME,揭示了KAME IPv6协议栈的所有细节,对每行代码到底做了什么,以及为什么要这样设计都进行了解释。全书共分6章,分别介绍IPv6单播路由选择协议、IPv6多播技术、IPv6的DNS DHCPv6、移动IPv6、IPv6与IP安全。书中每章都包含两个主要部分,第一部分是相关规范的综述,第二部分则逐行代码地描述和分析实际的实现。

《IPv6详解.卷2:高级协议实现》是IPv6的权威参考书,适合网络设计和开发人员阅读。此外,《IPv6详解.卷2:高级协议实现》还适合作为高校相关专业网络课程的教学参考书。

媒体推荐“阅读本书是一种享受,让我想起了RichardStevens的《TCPflP详解》,本书的技术深度完全可以与之媲美,”

——Jim Bound,北美IPv6工作组主席

“在IPv6时代,本书将取代Richard Stevens的《TCP/IP详解》一书。我强烈推荐给所有程序员阅读:”

——Junichiro Hagino.KAME项目核心开发者

编辑推荐IPv6的时代即将到来!

《IPv6详解.卷2:高级协议实现》由开源的IPv6标准参考实现KAME的核心开发人员撰写,沿袭了被奉为经典的RichardSteverls的《TCP/IP详解》的写作方式和风格,覆盖了IPv6技术的全部内容,是毋庸置疑的IPv6权威参考书。书中详尽剖析了IPv6协议及其实现的技术细节,逐行诠释了KAME每一行代码的作用,并结合阐述了弥足珍贵的设计体会,对网络研究、设计和开发人员都有极高的参考价值。

全书分为两卷,第1卷介绍核心协议的实现。第2卷主要介绍高级协议的实现。《IPv6详解.卷2:高级协议实现》适合网络设计和开发人员阅读,对于下一代网络产品研发人员尤其具有参考价值。Qin9 Li8Iue Coat系统公司资深架构师,负责领导下一代支持IPv6的安全代理应用系统的设计和开发工作:他曾在风河系统公司工作8年,是风河嵌入式IPv6产品的首席架构师:他拥有多项美国专利。并著有Real-Time Concepts forEmbedded Systems等畅销书。他还是FreeBSD操作系统项目活跃的开发者: Tatuya Jinmei (神明达哉)东芝公司研究与开发中心的科学家。KAME项目核心开发人员。2003年在日本庆应义塾大学获得博士学位,Keiichi Shima(岛庆一)日本Internel lnitiative公司的资深研究人员。他的研究领域是IPv6和IPv6移动性。KAME项目核心开发人员,开发了移动IPv6/NEMO基本支持协议栈:现在正致力于BSD操作系统中新的移动栈(SHISA栈)的研究。

目录

1IPv6 Unicast Routing Protocols1

1.1Introduction1

1.2Overview of Routing Concepts2

1.2Overview of Vector-based Algorithms and Link-StateAlgorithm5

1.3.1Distance-Vector Algorithm5

1.3.2Path-Vector Algorithm7

1.3.3Link-State Algorithm7

1.4Introduction to RIPng10

1.4.1RIPng Message Formats11

1.4.2RIPng Operation14

1.4.3Problems with RIPng15

1.5Introduction to BGP4+17

1.5.1BGP4+ Operation19

1.5.2BGP4+ Messages21

1.5.3Path Attributes27

1.5.4IPv6 Extensions for BGP4+29

1.5.5BGP4+ Route Selection Process31

1.6Introduction to OSPFv233

1.6.1Router Adjacency and LSDB Synchronization33

1.6.2Area Types and Router Classification35

1.6.3Link State Advertisement and LSA Types35

1.6.4LSA Formats37

1.6.5OSPF Tree Construction and Route Computation46

1.7Code Introduction49

1.8IPv6 Routing Table in the BSD Kernel50

1.8.1Scope Zone Representation in the RoutingTable53

1.9Routing API55

1.9.1Routing Sockets55

1.9.2Dumping Routing Table via sysctl()62

1.10Overview of route6d Daemon65

1.11Common Data Structures, Routines and Global Variables65

1.11.1Structures for RIPng Messages65

1.11.2route6d’s Routing Table67

1.11.3Structures for Local Interfaces68

1.11.4route6d Route Filter Entry70

1.11.5Subroutines and Global Variables72

1.12Interface Configuration74

1.12.1ifconfig() Function74

1.12.2ifconfig1() Function77

1.12RIPng Protocol Operation81

1.13.1sendrequest() Function82

1.13.2riprecv() Function83

1.13.3riprequest() Function96

1.13.4ripsend() Function97

1.13.5ripalarm() Function104

1.14Routing Operation Using route6d105

1.14.1A Leaf Network105

1.14.2A Simple Loop Network108

1.14.3A Hierarchical Network111

2IPv6 Multicasting113

2.1Introduction113

2.2IPv6 Multicast Address to Layer-2 Multicast AddressMapping114

2.2Multicast Listener Discovery Protocol114

2.3.1MLD Protocol Message Format115

2.3.2Router Alert Option116

2.3.3Source Address Selection116

2.3.4Destination Address Selection116

2.3.5MLD Querier116

2.3.6Operational Variables117

2.3.7MLD Join Process118

2.3.8MLD Leave Process119

2.4Multicast Routing Fundamentals120

2.4.1Reverse Path Forwarding120

2.4.2Multicast Routing Models121

2.4.3Protocol Independent Multicast125

2.4.4IPv6 Specific Issues about PIM128

2.4.5IPv6 Multicast Future—MLDv2 and SSM130

2.5Code Introduction131

2.6MLD Implementation133

2.6.1Types and Structures133

2.6.2mld6_init() Function136

2.6.3Joining a Group: mld6_start_listening()Function137

2.6.4Leaving a Group: mld6_stop_listening()Function139

2.6.5Input Processing: mld6_input() Function140

2.6.6mld6_fasttimeo() Function144

2.6.7mld6_sendpkt() Function146

2.6.8mld_allocbuf() Function149

2.7IPv6 Multicast Interface: mif6{} Structure150

2.8IPv6 Multicast Routing API152

2.8.1ip6_mrouter_set() Function152

2.8.2ip6_mrouter_init() Function155

2.8.3ip6_mrouter_get() Function156

2.8.4set_pim6() Function157

2.8.5add_m6if() Function157

2.8.6del_m6if() Function160

2.8.7ip6_mrouter_done() Function161

2.8.8mrt6_ioctl() Function164

2.8.9get_mif6_cnt() Function164

2.9IPv6 Multicast Forwarding Cache165

2.9.1add_m6fc() Function166

2.9.2del_m6fc() Function171

2.9.3expire_upcalls() Function172

2.9.4get_sg_cnt() Function173

2.10 IPv6 Multicast Forwarding174

2.10.1ip6_mforward() Function175

2.10.2ip6_mdq() Function183

2.10.3phyint_send() Function189

2.10.4register_send() Function192

2.10.5socket_send() Function194

2.10.6pim6_input() Function195

2.11IPv6 Multicast Operation202

2.11.1ifmcstat Command202

2.11.2Enable IPv6 Multicast Routing203

2.11.3pim6dd and pim6sd Routing Daemons203

2.11.4pim6stat Output203

2.11.5netstat Command206

3DNS for IPv6207

3.1Introduction207

3.2Basics of DNS Definitions and Protocols208

3.2.1DNS, Domains, and Zones208

3.2.2Resource Records and Zone Files210

3.2.3DNS Transaction and Packet Format212

3.2.4Name Resolution and Caching214

3.2IPv6-Related Topics about DNS217

3.3.1AAAA Resource Record217

3.3.2DNS Reverse Tree for IPv6217

3.3.3IPv6 Transport for DNS219

3.3.4Packet Size Issue and EDNS0219

3.3.5Misbehaving DNS Servers against AAAA222

3.3.6Obsolete Standards225

3.4Implementation of IPv6 DNS Resolver226

3.4.1_dns_getaddrinfo() Function229

3.4.2getanswer() Function235

3.4.3res_queryN() Function243

3.4.4Resolver State Structure245

3.4.5res_init() Function248

3.4.6res_send() Function250

3.4.7IPv6 Reverse Lookup: _dns_ghbyaddr()Function260

3.5IPv6 DNS Operation with BIND264

3.5.1Overview of BIND9 265

3.5.2Getting BIND9 266

3.5.3Building and Installing BIND9 266

3.5.4Configuring BIND9for IPv6 Operation267

3.5.5Implementation-Specific Notes274

3.5.6Complete Configuration Example282

3.5.7dig and host Utilities286

4DHCPv6289

4.1Introduction289

4.2Overview of the DHCPv6 Protocol290

4.2.1Cases for DHCPv6290

4.2.2Definitions about DHCPv6293

4.2.3DHCPv6 Message Exchanges297

4.2.4Summary of DHCPv6 Options310

4.2.5Interaction with Neighbor Discovery319

4.2.6Comparison to DHCPv4319

4.2Code Introduction320

4.3.1Common Data Structures and Routines320

4.4Client Implementation326

4.4.1Client-Specific Data Structures328

4.4.2client6_mainloop() Function332

4.4.3client6_timo() Function333

4.4.4client6_send() Function338

4.4.5client6_recv() Function344

4.4.6client6_recvadvert() Function346

4.4.7client6_recvreply() Function352

4.4.8Processing Identity Association357

4.4.9update_ia() Function359

4.4.10update_address() Function365

4.4.11reestablish_ia() Function369

4.4.12ia_timo() Function374

4.4.12Release Resources379

4.5Server Implementation382

4.5.1server6_mainloop() Function386

4.5.2server6_recv() Function387

4.5.3process_relayforw() Function391

4.5.4react_solicit() Function396

4.5.5react_request() Function401

4.5.6make_ia() Function406

4.5.7react_renew() Function417

4.5.8react_rebind() Function419

4.5.9binding_time() Function426

4.5.10react_release() Function428

4.5.11react_informreq() Function432

4.5.12server6_send() Function434

4.6Relay Agent Implementation439

4.6.1relay6_loop() Function439

4.6.2relay6_recv() Function441

4.6.3relay_to_server() Function444

4.6.4relay_to_client() Function450

4.7Implementation of DHCPv6 Authentication454

4.7.1Data Structures Related to DHCPv6 Authentication454

4.7.2set_auth() Function455

4.7.2process_auth() Function (Client Side)458

4.7.4process_auth() Function (Server Side)462

4.8DHCPv6 Operation468

4.8.1Building the DHCPv6 Implementation468

4.8.2Configuring a DUID469

4.8.3Configuring the DHCPv6 Server469

4.8.4Configuring the DHCPv6 Client470

4.8.5Configuring the DHCPv6 Relay Agent474

4.8.6Configuring DHCPv6 Authentication475

4.8.7Configuring Control Command Keys476

4.8.8Operation of DHCPv6 Services476

5Mobile IPv6485

5.1Introduction485

5.2Mobile IPv6 Overview486

5.2.1Types of Nodes487

5.2.2Basic Operation of Mobile IPv6488

5.2Header Extension491

5.3.1Alignment Requirements493

5.3.2Home Address Option493

5.3.3Type2Routing Header494

5.3.4Mobility Header495

5.3.5Mobility Options503

5.3.6Neighbor Discovery Messages506

5.3.7ICMPv6 Messages509

5.4Procedure of Mobile IPv6512

5.4.1Protocol Constants and Variables512

5.4.2Home Registration512

5.4.3Bi-directional Tunneling516

5.4.4Intercepting Packets for a Mobile Node518

5.4.5Returning Home519

5.5Route Optimization521

5.5.1Return Routability522

5.5.2Sending Initial Messages522

5.5.3Responding to Initial Messages523

5.5.4Computing a Shared Secret525

5.5.5Verifying Message526

5.5.6Security Considerations527

5.5.7De-Register Binding for Correspondent Nodes528

5.5.8Backward Compatibility528

5.6Movement Detection529

5.7Dynamic Home Agent Address Discovery530

5.8Mobile Prefix Solicitation/Advertisement533

5.9Relationship with IPsec534

5.10Code Introduction537

5.10.1Statistics537

5.11Mobile IPv6 Related Structures539

5.11.1Files539

5.11.2Mobility Header Message—ip6_mh{} Structure539

5.11.3Binding Refresh Request Message—ip6_mh_binding_request{}Structure541

5.11.4Home Test Init Message—ip6_mh_home_test_init{}Structure541

5.11.5Care-of Test Init Message—ip6_mh_careof_test_init{}Structure542

5.11.6Home Test Message—ip6_mh_home_test{}Structure543

5.11.7Care-of Test Message—ip6_mh_careof_test{}Structure543

5.11.8Binding Update Message—ip6_mh_binding_update{}Structure544

5.11.9Binding Acknowledgment Message—ip6_mh_binding_ack{}Structure545

5.11.10Binding Error Message—ip6_mh_binding_error{}Structure546

5.11.11Mobility Option Message Structures548

5.11.12Mobility Option Message—ip6_mh_opt{} Structure548

5.11.12Binding Refresh Advice Option—ip6_mh_opt_refresh_advice{}Structure549

5.11.14Alternate Care-of Address Option—ip6_mh_opt_altcoa{}Structure549

5.11.15Nonce Index Option—ip6_mh_opt_nonce_index{}Structure550

5.11.16Authentication Data Option—ip6_mh_opt_auth_data{}Structure550

5.11.17The Internal Mobility Option—mip6_mobility_options{}Structure551

5.11.18Home Address Option—ip6_opt_home_address{}Structure551

5.11.19Type2Routing Header—ip6_rthdr2{} Structure552

5.11.20The Modified Router Advertisement Message—nd_router_advert{}Structure552

5.11.21The Modified Prefix Information Option—nd_opt_prefix_info{}Structure553

5.11.22Advertisement Interval Option—nd_opt_adv_interval{}Structure554

5.11.22Home Agent Information Option—nd_opt_homeagent_info{}Structure554

5.11.24Dynamic Home Agent Address Discovery Request Message—mip6_dhaad_req{} Structure555

5.11.25Dynamic Home Agent Address Discovery Reply Message—mip6_dhaad_rep{} Structure555

5.11.26Mobile Prefix Solicitation Message—mip6_prefix_solicit{}Structure556

5.11.27Mobile Prefix Advertisement Message—mip6_prefix_advert{}Structure556

5.11.28Binding Cache Entry—mip6_bc{} Structure557

5.11.29Binding Update List Entry—mip6_bu{} Structure559

5.11.30Home Agent Entry—mip6_ha{} structure561

5.11.31Prefix Entry—mip6_prefix{} Structure562

5.11.32Home Virtual Interface—hif_softc{} Structure563

5.12Macro and Type Definitions567

5.12Global Variables570

5.14Utility Functions570

5.14.1Files570

5.14.2Creation of IPv6 Header570

5.14.3Checksum Computation572

5.15Common Mobility Header Processing575

5.15.1Files575

5.15.2Mobility Header Input575

5.15.3Generating Binding Error Messages581

5.15.4Rate Limitation of Binding Error Messages582

5.15.5Creation of Binding Error Message583

5.15.6Mobility Header Message Delivery to Raw Sockets585

5.16Home Agent and Correspondent Node588

5.16.1Files589

5.16.2Binding Update Message Input589

5.16.3Binding Cache Entry Management598

5.16.4Mobility Options Processing606

5.16.5Validation of Binding Update Message for CorrespondentNode608

5.16.6Kbm and Authorization Data Computation610

5.16.7Managing Binding Cache Entry as CorrespondentNode615

5.16.8Sending Binding Refresh Request Message618

5.16.9Home Registration Processing622

5.16.10The DAD Procedure628

5.16.11Proxy Neighbor Discovery Control634

5.16.12Home De-Registration Procedure639

5.16.13Sending a Binding Acknowledgment Message642

5.16.14Nonce and Nodekey Management649

5.16.15Receiving a Home Address Option653

5.16.16Sending Packets to Mobile Nodes via Tunnel660

5.16.17Recovery of Temporarily Disabled Proxy Entry664

5.16.18Receiving ICMPv6 Error Messages666

5.16.19Home Agent List Management670

5.16.20Prefix List Management684

5.16.21Sending a Mobile Prefix Advertisement Message684

5.16.22Constructing the Payload687

5.17Mobile Node689

5.17.1Files689

5.17.2Binding Update List Entry Management689

5.17.3Movement Detection699

5.17.4Configuring Home Addresses711

5.17.5Sending a Binding Update Message721

5.17.6Receiving a Binding Acknowledgment Message737

5.17.7Receiving a Type2Routing Header750

5.17.8Receiving a Binding Refresh Request Message754

5.17.9Receiving a Binding Error Message755

5.17.10Source Address Selection758

5.17.11Home Agent List Management763

5.17.12Prefix Information Management772

5.17.13Receiving Prefix Information by Router AdvertisementMessages784

5.17.14Sending a Mobile Prefix Solicitation Message793

5.17.15Receiving a Mobile Prefix Advertisement Message796

5.17.16Sending a Dynamic Home Agent Address Discovery RequestMessage804

5.17.17Receiving a Dynamic Home Agent Address Discovery ReplyMessage808

5.17.18Receiving ICMPv6 Error Messages813

5.17.19State Machine815

5.17.20Primary State Machine817

5.17.21Secondary State Machine837

5.17.22Virtual Home Interface844

5.17.23Return Routability and Route Optimization857

5.17.24Route Optimized Communication874

5.17.25Tunnel Control884

5.17.26Receiving Packets from a Tunnel887

5.17.27I/O Control889

5.18Mobile IPv6 Operation892

5.18.1Rebuilding a Kernel with Mobile IPv6 Extension892

5.18.2Rebuilding User Space Programs893

5.18.3IPsec Signal Protection894

5.18.4Configuring Node897

5.18.5Viewing Status Information899

5.18.6Viewing Statistics899

5.19Appendix901

5.19.1The Manual Page of mip6control901

6IPv6 and IP Security903

6.1Introduction903

6.2Authentication Header904

6.3Encapsulating Security Payload906

6.4Transport Mode and Tunnel Mode908

6.5Security Association Database909

6.5.1Security Policy Database910

6.5.2Security Association Database911

6.5.3SAD and SPD Example912

6.6IPsec Traffic Processing913

6.7SPD and SAD Management914

6.7.1Manual Keying and Automatic Keying915

6.8Manual Configuration916

6.8.1Configuration File Format917

6.8.2Examples of Manipulating SP Entries922

6.8.3Examples of Manipulating SA Entries924

6.9Internet Security Association and Key Management Protocol(ISAKMP) Overview925

6.9.1ISAKMP Exchanges927

6.9.2Domain of Interpretation929

6.9.3Internet Key Exchange Protocol930

6.10Racoon Operation931

6.10.1Configuring Racoon931

6.10.2Configuration File Format932

6.11Scenarios937

6.11.1Creating a VPN between 3 Networks938

6.11.2Creating Star Topology VPN942

6.11.3Using Transport Mode IP Security945

6.11.4Connecting to the Server from Public Access Points949

References953

Index961

……[看更多目录]

序言Back in 1994.when the IETF accepted the proposal that iS known as IPv6 today,1 was convincedfrom that moment,such a new fundamental protocol would be difficult if not impossible to beaccepted,adopted and deployed by the networking community without a highqualiW opensource reference implementation that is freely available.This conviction stems from my close involvement with the original TCP/IPv4 protocolsand UC Berkeley’s BSD implementation of these protocols.I have seen firsthand how the BSDimplementation has made enormous contribution to the success of TCP/IPv4,commonly knownas the Internet protocols.We needed a new effort that played the same role for IPv6.

It was our turn to make a contribution to the world of the Internet from a developer’s pointof view,but at that time the economic impact of the Internet boom already made my colleaguesat Berkeley too busy.I understood that we had a mission and SO the IPv6 working group wasborn in the WIDE project for this purpose,which eventually evolved into the KAME project.

One of the requirements demanded of the so ftware to be developed by the KAWE project,was to demonstrate how the IPv6 protocols work and how well the protocols operate in realenvironments——a difficult and challenging task,With the long and very patient help from all thesupporters.the KAME project members fulfilled this goal with theft diligence and perseverance.The KAME implementation was adopted bv all major BSD variants as the defacto IPv6 implementation.And KAME iS often refefred to during IPv6 discussions at IETE meetings.I strongly believe the success of the KAME project played a significant role in the wide acceptance andthe continued adoption of the IPv6 technology.

文摘插图:

IPv6详解(卷2):高级协议实现(英文版)(图灵原版计算机科学系列)

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
更多商品
群体智能(英文版)(图灵原版计算机科学系列)
IPv6详解:卷1:核心协议实现(英文版)(图灵原版计算机科学系列)
S7-300/400PLC入门与开发实例(PLC技术实用丛书)
卫星电视接收技术实用教程
Windows程序设计(英文版)(第5版)(套装上下册)(图灵程序设计丛书·微软技术系列)
3ds Max/Vray印象:商业大空间效果图表现技法
水晶石技法3ds Max建筑模型制作(水晶石教材系列)(附VCD光盘两张)
After Effects CS3影视特效制作实例精讲(附VCD光盘一张)
TD-SCDMA通信网络规划与设计(TD-SCDMA技术丛书)
AVR单片机C语言开发入门与典型实例
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有