皮皮网

【邮件发送软件源码】【delphi录音源码】【粉色教程网源码】ospf源码

时间:2024-11-26 10:25:39 来源:视频源码怎么修改 作者:墨香源码注释

1.TCP/IP详解卷1:协议的作品目录
2.XORP简介
3.tracert工作原理&路由原理
4.OpenWrt简明使用手册
5.下列选项中,源码不会出现在Cisco路由器路由表中的源码是(  )。
6.BGP路由协议原理

ospf源码

TCP/IP详解卷1:协议的作品目录

       è¯‘者序

       å‰è¨€

       ç¬¬1ç«  概述1

       1.1 引言1

       1.2 分层1

       1.3 TCP/IP的分层4

       1.4 互联网的地址5

       1.5 域名系统6

       1.6 封装6

       1.7 分用8

       1.8 客户-服务器模型8

       1.9 端口号9

       1. 标准化过程

       1. RFC

       1. 标准的简单服务

       1. 互联网

       1. 实现

       1. 应用编程接口

       1. 测试网络

       1. 小结

       ç¬¬2ç«  链路层

       2.1 引言

       2.2 以太网和IEEE 封装

       2.3 尾部封装

       2.4 SLIP:串行线路IP

       2.5 压缩的SLIP

       2.6 PPP:点对点协议

       2.7 环回接口

       2.8 最大传输单元MTU

       2.9 路径MTU

       2. 串行线路吞吐量计算

       2. 小结

       ç¬¬3ç«  IP:网际协议

       3.1 引言

       3.2 IP首部

       3.3 IP路由选择

       3.4 子网寻址

       3.5 子网掩码

       3.6 特殊情况的IP地址

       3.7 一个子网的例子

       3.8 ifconfig命令

       3.9 netstat命令

       3. IP的未来

       3. 小结

       ç¬¬4ç«  ARP:地址解析协议

       4.1 引言

       4.2 一个例子

       4.3 ARP高速缓存

       4.4 ARP的分组格式

       4.5 ARP举例

       4.5.1 一般的例子

       4.5.2 对不存在主机的ARP请求

       4.5.3 ARP高速缓存超时设置

       4.6 ARP代理

       4.7 免费ARP

       4.8 arp命令

       4.9 小结

       ç¬¬5ç«  RARP:逆地址解析协议

       5.1 引言

       5.2 RARP的分组格式

       5.3 RARP举例

       5.4 RARP服务器的设计

       5.4.1 作为用户进程的RARP服务器

       5.4.2 每个网络有多个RARP服务器

       5.5 小结

       ç¬¬6ç«  ICMP:Internet控制报文协议

       6.1 引言

       6.2 ICMP报文的类型

       6.3 ICMP地址掩码请求与应答

       6.4 ICMP时间戳请求与应答

       6.4.1 举例

       6.4.2 另一种方法

       6.5 ICMP端口不可达差错

       6.6 ICMP报文的4.4BSD处理

       6.7 小结

       ç¬¬7ç«  Ping程序

       7.1 引言

       7.2 Ping程序

       7.2.1 LAN输出

       7.2.2 WAN输出

       7.2.3 线路SLIP链接

       7.2.4 拨号SLIP链路

       7.3 IP记录路由选项

       7.3.1 通常的例子

       7.3.2 异常的输出

       7.4 IP时间戳选项

       7.5 小结

       ç¬¬8ç«  Traceroute程序

       8.1 引言

       8.2 Traceroute 程序的操作

       8.3 局域网输出

       8.4 广域网输出

       8.5 IP源站选路选项

       8.5.1 宽松的源站选路的traceroute

       ç¨‹åºç¤ºä¾‹

       8.5.2 严格的源站选路的traceroute

       ç¨‹åºç¤ºä¾‹

       8.5.3 宽松的源站选路traceroute程序

       çš„往返路由

       8.6 小结

       ç¬¬9ç«  IP选路

       9.1 引言

       9.2 选路的原理

       9.2.1 简单路由表

       9.2.2 初始化路由表

       9.2.3 较复杂的路由表

       9.2.4 没有到达目的地的路由

       9.3 ICMP主机与网络不可达差错

       9.4 转发或不转发

       9.5 ICMP重定向差错

       9.5.1 一个例子

       9.5.2 更多的细节

       9.6 ICMP路由器发现报文

       9.6.1 路由器操作

       9.6.2 主机操作

       9.6.3 实现

       9.7 小结

       ç¬¬ç«  动态选路协议

       .1 引言

       .2 动态选路

       .3 Unix选路守护程序

       .4 RIP:选路信息协议

       .4.1 报文格式

       .4.2 正常运行

       .4.3 度量

       .4.4 问题

       .4.5 举例

       .4.6 另一个例子

       .5 RIP版本

       .6 OSPF:开放最短路径优先

       .7 BGP:边界网关协议

       .8 CIDR:无类型域间选路

       .9 小结

       ç¬¬ç«  UDP:用户数据报协议

       .1 引言

       .2 UDP首部

       .3 UDP检验和

       .3.1 tcpdump输出

       .3.2 一些统计结果

       .4 一个简单的例子

       .5 IP分片

       .6 ICMP不可达差错(需要分片)

       .7 用Traceroute确定路径MTU

       .8 采用UDP的路径MTU发现

       .9 UDP和ARP之间的交互作用

       . 最大UDP数据报长度

       . ICMP源站抑制差错

       . UDP服务器的设计

       ..1 客户IP地址及端口号

       ..2 目标IP地址

       ..3 UDP输入队列

       ..4 限制本地IP地址

       ..5 限制远端IP地址

       ..6 每个端口有多个接收者

       . 小结

       ç¬¬ç«  广播和多播

       .1 引言

       .2 广播

       .2.1 受限的广播

       .2.2 指向网络的广播

       .2.3 指向子网的广播

       .2.4 指向所有子网的广播

       .3 广播的例子

       .4 多播

       .4.1 多播组地址

       .4.2 多播组地址到以太网地址的转换

       .4.3 FDDI和令牌环网络中的多播

       .5 小结

       ç¬¬ç«  IGMP:Internet组管理协议

       .1 引言

       .2 IGMP报文

       .3 IGMP协议

       .3.1 加入一个多播组

       .3.2 IGMP报告和查询

       .3.3 实现细节

       .3.4 生存时间字段

       .3.5 所有主机组

       .4 一个例子

       .5 小结

       ç¬¬ç«  DNS:域名系统

       .1 引言

       .2 DNS基础

       .3 DNS的报文格式

       .3.1 DNS查询报文中的问题部分

       .3.2 DNS响应报文中的资源记录部分

       .4 一个简单的例子

       .5 指针查询

       .5.1 举例

       .5.2 主机名检查

       .6 资源记录

       .7 高速缓存

       .8 用UDP还是用TCP

       .9 另一个例子

       . 小结

       ç¬¬ç«  TFTP:简单文件传送协议

       .1 引言

       .2 协议

       .3 一个例子

       .4 安全性

       .5 小结

       ç¬¬ç«  BOOTP: 引导程序协议

       .1 引言

       .2 BOOTP的分组格式

       .3 一个例子

       .4 BOOTP服务器的设计

       .5 BOOTP穿越路由器

       .6 特定厂商信息

       .7 小结

       ç¬¬ç«  TCP:传输控制协议

       .1 引言

       .2 TCP的服务

       .3 TCP的首部

       .4 小结

       ç¬¬ç«  TCP连接的建立与终止

       .1 引言

       .2 连接的建立与终止

       .2.1 tcpdump的输出

       .2.2 时间系列

       .2.3 建立连接协议

       .2.4 连接终止协议

       .2.5 正常的tcpdump输出

       .3 连接建立的超时

       .3.1 第一次超时时间

       .3.2 服务类型字段

       .4 最大报文段长度

       .5 TCP的半关闭

       .6 TCP的状态变迁图

       .6.1 2MSL等待状态

       .6.2 平静时间的概念

       .6.3 FIN_WAIT_2状态

       .7 复位报文段

       .7.1 到不存在的端口的连接请求

       .7.2 异常终止一个连接

       .7.3 检测半打开连接

       .8 同时打开

       .9 同时关闭

       . TCP选项

       . TCP服务器的设计

       ..1 TCP服务器端口号

       ..2 限定的本地IP地址

       ..3 限定的远端IP地址

       ..4 呼入连接请求队列

       . 小结

       ç¬¬ç«  TCP的交互数据流

       .1 引言

       .2 交互式输入

       .3 经受时延的确认

       .4 Nagle算法

       .4.1 关闭Nagle算法

       .4.2 一个例子

       .5 窗口大小通告

       .6 小结

       ç¬¬ç«  TCP的成块数据流

       .1 引言

       .2 正常数据流

       .3 滑动窗口

       .4 窗口大小

       .5 PUSH标志

       .6 慢启动

       .7 成块数据的吞吐量

       .7.1 带宽时延乘积

       .7.2 拥塞

       .8 紧急方式

       .9 小结

       ç¬¬ç«  TCP的超时与重传

       .1 引言

       .2 超时与重传的简单例子

       .3 往返时间测量

       .4 往返时间RTT的例子

       .4.1 往返时间RTT的测量

       .4.2 RTT估计器的计算

       .4.3 慢启动

       .5 拥塞举例

       .6 拥塞避免算法

       .7 快速重传与快速恢复算法

       .8 拥塞举例(续)

       .9 按每条路由进行度量

       . ICMP的差错

       . 重新分组

       . 小结

       ç¬¬ç«  TCP的坚持定时器

       .1 引言

       .2 一个例子

       .3 糊涂窗口综合症

       .4 小结

       ç¬¬ç«  TCP的保活定时器

       .1 引言

       .2 描述

       .3 保活举例

       .3.1 另一端崩溃

       .3.2 另一端崩溃并重新启动

       .3.3 另一端不可达

       .4 小结

       ç¬¬ç«  TCP的未来和性能

       .1 引言

       .2 路径MTU发现

       .2.1 一个例子

       .2.2 大分组还是小分组

       .3 长肥管道

       .4 窗口扩大选项

       .5 时间戳选项

       .6 PAWS:防止回绕的序号

       .7 T/TCP:为事务用的TCP扩展

       .8 TCP的性能

       .9 小结

       ç¬¬ç«  SNMP:简单网络管理协议

       .1 引言

       .2 协议

       .3 管理信息结构

       .4 对象标识符

       .5 管理信息库介绍

       .6 实例标识

       .6.1 简单变量

       .6.2 表格

       .6.3 字典式排序

       .7 一些简单的例子

       .7.1 简单变量

       .7.2 get-next操作

       .7.3 表格的访问

       .8 管理信息库(ç»­)

       .8.1 system组

       .8.2 interface组

       .8.3 at组

       .8.4 ip组

       .8.5 icmp组

       .8.6 tcp组

       .9 其他一些例子

       .9.1 接口MTU

       .9.2 路由表

       . trap

       . ASN.1和BER

       . SNMPv

       . 小结

       ç¬¬ç«  Telnet和Rlogin:远程登录

       .1 引言

       .2 Rlogin协议

       .2.1 应用进程的启动

       .2.2 流量控制

       .2.3 客户的中断键

       .2.4 窗口大小的改变

       .2.5 服务器到客户的命令

       .2.6 客户到服务器的命令

       .2.7 客户的转义符

       .3 Rlogin的例子

       .3.1 初始的客户-服务器协议

       .3.2 客户中断键

       .4 Telnet协议

       .4.1 NVT ASCII

       .4.2 Telnet命令

       .4.3 选项协商

       .4.4 子选项协商

       .4.5 半双工、一次一字符、一次

       ä¸€è¡Œæˆ–行方式

       .4.6 同步信号

       .4.7 客户的转义符

       .5 Telnet举例

       .5.1 单字符方式

       .5.2 行方式

       .5.3 一次一行方式(准行方式)

       .5.4 行方式:客户中断键

       .6 小结

       ç¬¬ç«  FTP:文件传送协议

       .1 引言

       .2 FTP协议

       .2.1 数据表示

       .2.2 FTP命令

       .2.3 FTP应答

       .2.4 连接管理

       .3 FTP的例子

       .3.1 连接管理:临时数据端口

       .3.2 连接管理:默认数据端口

       .3.3 文本文件传输:NVT ASCII

       è¡¨ç¤ºè¿˜æ˜¯å›¾åƒè¡¨ç¤º

       .3.4 异常中止一个文件的传输:

       Telnet同步信号

       .3.5 匿名FTP

       .3.6 来自一个未知IP地址的匿名FTP

       .4 小结

       ç¬¬ç«  SMTP:简单邮件传送协议

       .1 引言

       .2 SMTP协议

       .2.1 简单例子

       .2.2 SMTP命令

       .2.3 信封、首部和正文

       .2.4 中继代理

       .2.5 NVT ASCII

       .2.6 重试间隔

       .3 SMTP的例子

       .3.1 MX记录:主机非直接连到

       Internet

       .3.2 MX记录:主机出故障

       .3.3 VRFY和EXPN命令

       .4 SMTP的未来

       .4.1 信封的变化:扩充的SMTP

       .4.2 首部变化:非ASCII字符

       .4.3 正文变化:通用Internet邮件

       æ‰©å……

       .5 小结

       ç¬¬ç«  网络文件系统

       .1 引言

       .2 Sun远程过程调用

       .3 XDR:外部数据表示

       .4 端口映射器

       .5 NFS协议

       .5.1 文件句柄

       .5.2 安装协议

       .5.3 NFS过程

       .5.4 UDP还是TCP

       .5.5 TCP上的NFS

       .6 NFS实例

       .6.1 简单的例子:读一个文件

       .6.2 简单的例子:创建一个目录

       .6.3 无状态

       .6.4 例子:服务器崩溃

       .6.5 等幂过程

       .7 第3版的NFS

       .8 小结

       ç¬¬ç«  其他的TCP/IP应用程序

       .1 引言

       .2 Finger协议

       .3 Whois协议

       .4 Archie、WAIS、Gopher、Veronica

       å’ŒWWW

       .4.1 Archie

       .4.2 WAIS

       .4.3 Gopher

       .4.4 Veronica

       .4.5 万维网WWW

       .5 X窗口系统

       .5.1 Xscope程序

       .5.2 LBX: 低带宽X

       .6 小结

       é™„录A tcpdump程序

       é™„录B 计算机时钟

       é™„录C sock程序

       é™„录D 部分习题的解答

       é™„录E 配置选项

       é™„录F 可以免费获得的源代码

       å‚考文献

       ç¼©ç•¥è¯­

XORP简介

       XORP,源码全称eXtensible Open Router Platform,源码是源码一种开源的路由器软件栈,目前在行业内独一无二。源码邮件发送软件源码

       其目标在于打造一个功能全面、源码稳定、源码适合生产环境使用的源码软件路由器平台。XORP具有高度的源码灵活性与扩展性,支持多种路由协议,源码包括但不限于OSPF、源码RIP、源码BGP、源码OLSR、源码VRRP、PIM以及IGMP(多播)等。

       其设计旨在统一管理IPv4与IPv6协议的配置,实现对不同协议的高效整合。XORP支持的delphi录音源码操作系统广泛,涵盖了各种Linux发行版、BSD系统,以及Windows(通过mingw编译器编译实现)。

       作为一款开放源代码的路由器平台,XORP以其强大的功能、稳定的性能、以及对多种路由协议的支持,为网络搭建提供了更多可能。无论是对于追求高效率的企业级网络环境,还是对于寻求开源解决方案的开发者,XORP都展现出其独特的优势。

       从功能角度出发,XORP提供了一整套全面的路由配置工具,使得网络管理员能够轻松地管理复杂的网络架构,实现高效、稳定的网络服务。其支持的多种协议,覆盖了从基本的路由选择到高级的多播管理,满足了不同场景下的粉色教程网源码需求。

       在操作系统支持方面,XORP的兼容性极强,不仅涵盖了主流的Linux系统和BSD系统,还能够适配Windows环境,为用户提供更多选择。通过使用mingw编译器,XORP能够在Windows系统上实现高效运行,进一步扩大了其应用范围。

       总之,XORP作为一款开放源代码的路由器平台,以其强大的功能、广泛的兼容性和全面的协议支持,为网络搭建提供了强有力的技术支持。无论是对于寻求高性能网络解决方案的机构,还是对于注重开源社区参与的开发者,XORP都值得一试。

tracert工作原理&路由原理

       1:1 <1 ms <1 ms <1 ms proxy.huayuan.hy [...1]

        2 * ms ms ..2.3

        3 ms ms ms ...

        4 ms ms ms ..7.

        5 ms ms ms ..3.

        6 ms ms ms ..3.

        7 ms ms ms xd--5-a8.bta.net.cn [...5]

       Trace complete.

       看一下上面这个过程 应该不用解释了

       下面我们来分析一下 我们是怎么看到这个回显的

       大家都知道我们所发送的tracert数据包 属于icmp数据包的一种

       关于ttl的概念不知道能否理解

       ttl 就是生存时间的意思 也就是我们所发送的数据包 在转发过程中的寿命问题

       很好理解 如果寿命为0的话 就不能到达目的地 每经过一个三层设备我们的数据包的

       ttl值都会减一 如果减到0 就证明不能到达就会给我们的源主机一个回应显示

       并告知源主机 在哪个三层设备将这个生存值置0的 然后将这个三层设备的ip地址转发给

       源主机

       上面我们说的是ttl的一个原理和作用

       下面我们来说 tracert包的原理

       我们发送TRACERT包时 第一次的包的ttl值为1 这样到第一个三层设备那就会给

       源主机一个回应 并告知其IP

       依次类推 第二次发送的时候的TTL值等于2

       第三次为3 默认最大hop为

       也就是说ttl最大升到

       这样我门就能清楚的看到 我们的数据包是怎么到达目的地的

       2:当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到。商城报价php源码而要送给不同IP子网上的主机时,它要选择一个能到达目的子网上的路由器,把IP分组送给该路由器,由路由器负责把IP分组送到目的地。如果没有找到这样的路由器,主机就把IP分组送给一个称为“缺省网关(default gateway)”的路由器上。“缺省网关”是每台主机上的一个配置参数,它是接在同一个网络上的某个路由器端口的IP地址。

        路由器转发IP分组时,只根据IP分组目的IP地址的网络号部分,选择合适的端口,把IP分组送出去。同主机一样,路由器也要判定端口所接的是否是目的子网,如果是,就直接把分组通过端口送到网络上,否则,也要选择下一个路由器来传送分组。路由器也有它的云解析网站源码缺省网关,用来传送不知道往哪儿送的IP分组。这样,通过路由器把知道如何传送的IP分组正确转发出去,不知道的IP分组送给“缺省网关”路由器,这样一级级地传送,IP分组最终将送到目的地,送不到目的地的IP分组则被网络丢弃了。目前TCP/IP网络,全部是通过路由器互连起来的,Internet就是成千上万个IP子网通过路由器互连起来的国际性网络。网络称为以路由器为基础的网络(router based network),形成了以路由器为节点的“网间网”。在“网间网”中,路由器不仅负责对IP分组的转发,还要负责与别的路由器进行联络,共同确定“网间网”的路由选择和维护路由表。路由动作包括两项基本内容:寻径和转发。寻径即判定到达目的地的最佳路径,由路由选择算法来实现。由于涉及到不同的路由选择协议和路由选择算法,要相对复杂一些。为了判定最佳路径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关系告诉路由器。路由器间互通信息进行路由更新,更新维护路由表使之正确反映网络的拓扑变化,并由路由器根据量度来决定最佳路径。这就是路由选择协议(routing protocol),例如路由信息协议(RIP)、开放式最短路径优先协议(OSPF)和边界网关协议(BGP)等。

        转发即沿寻径好的最佳路径传送信息分组。路由器首先在路由表中查找,判明是否知道如何将分组发送到下一个站点(路由器或主机),如果路由器不知道如何发送分组,通常将该分组丢弃;否则就根据路由表的相应表项将分组发送到下一个站点,如果目的网络直接与路由器相连,路由器就把分组直接送到相应的端口上。这就是路由转发协议(routed protocol)。

        路由转发协议和路由选择协议是相互配合又相互独立的概念,前者使用后者维护的路由表,同时后者要利用前者提供的功能来发布路由协议数据分组。

OpenWrt简明使用手册

       欢迎探索OpenWrt的魅力,这款强大的路由器固件,专为工业控制和智能家居设备量身打造。它的核心特性在于其模块化设计和高度自定义的Linux系统,让你能够根据需求轻松定制和扩展功能。OpenWrt不仅支持RIP和OSPF等多种路由协议,还具备DMZ、VLAN以及全面的网络安全防火墙功能,确保您的网络连接稳定且安全。

       要开始你的OpenWrt之旅,首先从GitHub仓库获取源代码,利用BuildRoot构建系统,这里你可以自由选择处理器平台和优化的LuCI界面。更新固件既可以通过串口连接电脑,设置为波特率,按任意键中断固件加载,也可以通过Web界面方便操作,如登录..1.1进行刷新。而在VLAN配置上,OpenWrt支持细致的接口划分和管理,例如,使用uci set命令为eth1.1和eth1.2创建VLAN接口,设置静态IP和DHCP服务,然后将其加入到防火墙的lan区域,只需几个步骤即可完成。

       具体操作如下:

       使用uci set配置VLAN接口,如:eth1.1: ..3.1/,eth1.2: 静态IP

       在lan2接口上设置DHCP范围,如:dhcp lan2: start=, limit=, leasetime=h

       将lan2加入防火墙lan区域

       提交更改并重启路由器以应用新配置

       在更复杂的网络配置中,OpenWrt的Routing套件Quagga是你的得力助手,支持动态路由协议如RIP和OSPF,其vtysh管理工具提供了一体化的配置界面。例如,为了配置RIP,你需要编辑ripd.conf,更改网络地址后重启服务,并确保防火墙设置允许动态路由更新。

       同时,OpenWrt的OSPF支持快速收敛和自动路由计算,通过设置ospfd.conf配置文件和邻居路由器的同步,你可以轻松实现OSPF区域的管理。多播路由方面,OpenWrt通过igmpproxy代理支持,确保多媒体流的顺畅传输。防火墙方面,OpenWrt的firewall3组件提供高级的iptables规则管理和保护,无论是状态检测、NAT还是DMZ设置,都可通过UCI配置或LuCI界面进行直观配置。

       总的来说,OpenWrt以其灵活性和定制性,为你的网络设备提供了强大的控制力。无论你是网络新手还是高级用户,都能在OpenWrt的世界里找到适合自己的解决方案。现在就开启你的OpenWrt之旅,探索无限可能吧!

下列选项中,不会出现在Cisco路由器路由表中的是(  )。

       答案:C

       C解析路由器的路由表项第一列是路由源码,C表示直连,S表示静态路由,0使用OSPF协议,E使用EGP外部网关协议获得路由信息;第二列为目的网络地址和掩码;第三列是目的端口或下一跳路由器地址。另外还有缺省路由器表项,目的地址为0.0.0.0/0。C选项为缺省路由表项,其中目的地址掩码应用前缀号表示0.0.0.0/0。故选择C选项。

BGP路由协议原理

       æˆ‘大概说一下吧

       BGP用于AS之间,如电信各运营商之间都是使用BGP协议。

       1、BGP不同于OSPF/IS-IS/RIP等协议,它是一种AS之间的路由选择协议,而OSPF/RIP等属于AS内部路由选择协议;

       2、BGP是用来管理路由的,本身不能发现路由,而域内路由选择协议是可以及时发现路由的,并根据不同的算法计算路由。

       3、BGP对路由的管理体现在:BGP有丰富的路由属性,如:下一跳、metric、优先级、团体等,通过这些属性控制路由在as内的出入。

       BGP的几个工作原则:

       1, 忽略下一跳不可达的路由

       2, 忽略不同步的IBGP路由

       3, 首选具有最大权重优先,思科私有。(local to router)

       4, 首选具有最大本地优先级优先。(global within AS)

       5, 首选具有始发本地的路由的路由器优先,(next hop=0.0.0.0)

       6, 首选具有最短AS-PATH的路由。

       7, 首选具有最小的源码的路由,IGP〈EBP〈incomplete

       8, 当所有路由的AS号都相同的时候,首选MED最低的路由,在所有AS号码相同的时候比较MED

       9, 首选具有EBGP〉联盟EBGP>IBGP

       ï¼Œé¦–选具有最近的IGP邻居路由器优先,metric

        首选具有最老的路由优先(注意:现在这条基本不用)

       ï¼Œé¦–选具有最低ROUTER-ID的路由。(2个BGP地址不能建邻)

       ï¼Œé¦–选具有最低的neighbor的IP地址

       èµžåŒ0|评论

关键词:问答网站源码交易

copyright © 2016 powered by 皮皮网   sitemap