xdays

DNS协议详解

基本概念

树是一种数据结构,用来表达一种一对多的关系,一图胜千言。

tree

注意: 图选自《大话数据结构》

需要对树结构的几点说明:

  • 根节点没有父节点,叶节点没有子节点
  • 节点间不能有交叉
  • 很多应用树结构的应用场景,如linux目录结构等

域名

顾名思义,就是一个域的名字。其格式说明如下:

  • 以点分隔,每个字段最长63个字符,总长度最多255个字符(包括点)
  • 域名中可以使用任意的ASCII字符,但是有些自负需要转义(000到040,177到377和不做分隔符的点)​
  • 域名既可以表示一个域也可以表示一个主机,其实可以表示主机是因为它就是子域的根节点,如hp.com

域命名空间

用树结构表示出来的互联网所有域名数据就是域的命名空间。再来一张图说明下:

domain namespace

需要对命名空间有几点说明:

  • 命名空间的根是root用点来表示,严格来说所有的域名最后都有个点,因为都有所以省略了
  • 每个子树对应一个域
  • 把域名用点拆开 ...

arp欺骗过程

转自:http://baike.baidu.com/view/726493.htm?fr=ala0

假设一个只有三台电脑组成的局域网,该局域网由交换机(Switch)连接。其中一个电脑名叫A,代表攻击方;一台电脑叫S,代表源主机,即发送数据的电脑;令一台电脑名叫D,代表目的主机,即接收数据的电脑。这三台电脑的IP地址分别为192.168.0.2,192.168.0.3,192.168.0.4。MAC地址分别为MAC_A,MAC_S,MAC_D。

现在,S电脑要给D电脑发送数据了,在S电脑内部,上层的TCP和UDP的数据包已经传送到了最底层的网络接口层,数据包即将要发送出去,但这时还不知道目的主机D电脑的MAC地址MAC_D。这时候,S电脑要先查询自身的ARP缓存表,查看里面是否有192.168.0.4这台电脑的MAC地址,如果有 ...

Ping命令的工作过程及单向Ping通的原因

当网络出现问题时,我们最常用的测试工具就是“Ping”命令了。但有时候我们会碰到单方向Ping通的现象,例如通过HUB或一根交叉线连接的在同一个 局域网内的电脑A、 B,在检查它们之间的网络连通性时,发现从主机A Ping 主机B正常而从主机B Ping 主机A时,出现“超时无应答”错误。为什么呢?
要知道这其中的奥秘,我们有必要来看看Ping命令的工作过程到底是怎么样的。

原理部分:

假定主机A的IP地址是192.168.1.1,主机B的IP地址是192.168.1.2,都在同一子网内,则当你在主机A上运行“Ping 192.168.1.2”后,都发生了些什么呢?

首先,Ping命令会构建一个固定格式的ICMP请求数据包,然后由ICMP协议将这个数据包连同地址“192.168.1.2”一起交给IP层协议(和 ICMP一样,实际上是一组后台运行的进程),IP层协议将以地址 ...

传输层协议tcp/udp

一、TCP和UDP分段结构

tcp&udpsegment

1)!顺序号的单位是应用层数据的大小(byte为单位),也就是说两次tcp报文段的顺序号之差就是应用层数据大小(byte为单位)。!
2)确认号是请求下一个数据包的顺序号。
3)length字段以32位为单位计量。
4)code bits主要有如下含义:

  • U R G 紧急指针(u rgent pointer)有效
  • A C K 确认序号有效。
  • P S H 接收方应该尽快将这个报文段交给应用层。
  • R S T 重建连接。
  • S Y N 同步序号用来发起一个连接。
  • F I N 发端完成发送任务。

5)urgent pointer紧急指针:只有当U ...