DNS、ARP

目录

DNS以及它的用途

DNS的解析方式

DNS的查询方式

DNS使用TCP/UDP

DNS劫持

常见的DNS劫持现象

DNS劫持与HTTP劫持的不同

处理DNS劫持

DNS缓存

DNS实现负载均衡

ARP以及他的工作原理


DNS以及它的用途

DNS是域名解析服务器,用来将域名解析成IP。DNS工作在网络层

  • 正向域名解析:域名--> IP  ---A记录
  • 反向域名解析:IP-->域名  ---PTR记录

DNS的解析方式

  • 分布式域名解析:客户端在本地hosts文件中查找相对应的IP/域名映射关系,随着网络规模的越来越大,分布式分辨率越来越低
  • 集中式域名解析:会有多台DNS服务器管理维护存放IP/域名映射关系的数据库,客户端去到指定的服务器查询,如果指定的服务器查询不到就会在网络中递归查询,获取其他服务器上的地址信息。

DNS的查询方式

  • 递归查询:客户端到指定的服务器查询,如果此服务器中查询不到,服务器就会到网络中询问其他服务器,最后将DNS信息返回给客户端。只需要发送一次请求,我们就可以拿到结果。
  • 迭代查询:当客户机查询的服务器没有相关DNS信息,DNS服务器返回其他服务器的地址,客户端重新发起新的请求,知道查询到信息。每一次发送请求,都会相应结果,然后拿到结果后,再次发送请求,就是迭代查询。

DNS使用TCP/UDP

区域传输时用TCP

辅域名服务器会定时向主域名服务器进行查询,以便了解数据是否有变动。如有变动,会执行一次区域传送,进行数据同步。

  1. 可靠连接,保证了数据的准确性;
  2. 一般同步时,数据量比较大(UDP传输限制在512字节);
  3. 请求量少,但每次请求数据量较大;

域名解析时用UDP

客户端向DNS服务器查询域名,一般返回的内容都不超过512字节,用UDP传输即可。不三次握手省下的时间不容小觑。

  1. 非可靠连接,因为传输的数据量小,但不用建立连接,提高查询效率;
  2. 请求量多,但每次请求返回的数据包小;

DNS劫持

指攻击者利用其他攻击手段,篡改了某个域名的解析结果,使得指向该域名的IP变成了另一个IP,导致对相应网址的访问被劫持到另一个不可达的或者假冒的网址,从而实现非法窃取用户信息或者破坏正常网络服务的目的。

常见的DNS劫持现象

  • 广告劫持:用户正常页面指向到广告页面。
  • 恶意劫持:域名指向IP被改变,将用户访问流量引到挂马,盗号等对用户有害页面的劫持。

DNS劫持与HTTP劫持的不同

  • DNS劫持:在DNS服务器中,将某个域名对应的IP地址进行了篡改,你解析出来的域名对应的IP,在劫持前后不一样,访问的是另外一个网站。
  • HTTP劫持:你DNS解析的域名的IP地址不变,在和网站交互过程中的劫持了你的请求。比如当你正常访问一个无广告的页面时,页面上出现广告弹窗,那么可能是运营商劫持了HTTP。

处理DNS劫持

设置一个可靠的DNS服务器往往就可以解决问题但是还是困难会有解析不成功的可能,主要因为DNS污染:

  • 黑客攻击国外根服务器造成国内服务器域名解析遭到污染
  • 由于数据传输过程中网络节点较多,节点也可能成为攻击目标
  • 黑客在攻击单个网站的时候,因为节点较多,导致节点污染从而影响了全网

DNS缓存

当某一个DNS服务器接受到一个DNS响应时,此时就会缓存到本地存储器中。返回的资源的报文中TTL表示可以缓存的时间。

DNS实现负载均衡

如果存在一个大型的网站,此时可能存在多台服务器来提供服务,此时存在一个域名对应着多个服务器的ip地址,此时当用户请求DNS解析时,此时会请求到多个ip地址,在每一个请求中会循环的将这些ip地址排序,然后取出第一个返回给用户。由此将用户分配到请求不同服务器上,进而达到负载均衡。

ARP以及他的工作原理

arp协议在TCP/IP模型中属于IP层(网络层),在OSI模型中属于链路层

ARP是用于将 IP 地址映射到 MAC 地址的网络协议,它实现了将一种地址转换为另一种地址的功能,是局域网通信中必不可少的组成部分。其工作过程如下:

  1. 主机 A 需要向局域网中另一个主机 B 发送数据,但只知道目标主机的 IP 地址。
  2. 主机 A 先检查自己的 ARP 缓存表中是否有目标主机的 IP 对应的 MAC 地址,如果有,则直接发起通信请求。
  3. 如果 ARP 缓存表中没有所需信息,则主机 A 向它所在的子网内发送一个 ARP 请求广播包(Broadcast),其中包含目标IP地址和源MAC地址和源IP等信息。
  4. 局域网上的所有主机都会接收到 ARP 请求并接受目标IP地址,但只有目标主机(B)会解析该请求并将自己的 MAC 地址回复给主机 A。(非目标主机收到ARP包不会回应)
  5. 主机 A 接收到目标主机的 ARP 回复消息后,将该回复包中的 MAC 地址记录在自己的 ARP 缓存表中,并利用该地址生成传输数据的帧头开始进行数据传输。
  6. 简单来说,ARP 协议通过发送广播请求,让局域网内的每个主机都能获取到目标主机的 IP 地址,进而向目标主机请求其 MAC 地址。通过这个过程,主机 A 能够成功地将 IP 地址映射到 MAC 地址并开始网络通信。

需要注意的是,ARP 缓存表中存储了 IP 地址与 MAC 地址之间的映射关系,为避免 ARP 缓存被恶意攻击修改,通常需要启用 ARP 防护措施,如静态 ARP 表、动态 ARP 检测等技术。
 

你可能感兴趣的:(服务器,linux,网络)