开放服务和抓包实验|青训营笔记

228 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第3篇笔记

怕什么真理无穷,进一步有进一步的欢喜

开放外部用户访问

就是建设一个外部的网站,用于用户的访问

方案:

  1. 租赁一个公网IP用于给客户访问,为了方便用户访问,需要设置域名供访问
  2. www.example.com解析到公网的ip,绑定ip到一台物理机上
  3. 发布公网route,用于外部用户进行访问

自建DNS服务器

问题背景

  • 内网域名解析要出公网获取,效率低下
  • 容易被黑客攻击
  • 云厂商权威DNS易出故障,影响体验

DNS抓包演示

Linux下tcpdump抓取DNS包

既然说到了DNS,那么演示一下抓包,在Linux下使用tcpdump进行抓包

下面部分出自 本人在另一网站的历史文章,非拷贝他人

参数讲解

请添加图片描述

使用tcpdump工具进行DNS包的抓取,我们制定的参数:

  • -i eth0 指定我们的网卡
  • -n 按照IP地址和端口的数字形式进行输出
  • -s 我们制定抓取数据包的Size
  • port domain 指定域名服务

抓包流程

先开启左边的抓包, 然后我们使用host查询域名为www.baidu.com的对应的IP地址是啥

抓包结果

我们可以使用cat /etc/resolv.conf查看本地DNS服务器

IP表示我们的数据是IP数据报,其中172.16.106.212是我的主机,100....是本地的DNS服务器

+代表迭代查询,A就是我们查询的方式

最后一行就是DNS服务器将得到的IP地址回送给我们

在Win下面使用WireShark抓包(Ping命令)

使用ping命令连通本局域网内的一台主机(本机:202.194.67.29, 目的主机:202.194.67.28),打开WireShark进行抓包

IMG_2055.JPG Q:icmp前是否是有arp?

A:有,因为本地将arp缓存全部清除,使用ping命令(icmp协议)输入的是IP地址,需要连接mac地址所以绝对会有arp协议提前询问

图示33条包为询问....28的mac地址是啥& 请告诉。。。29

图示34条包为回答.....28的mac地址是啥

请求arp的显示(29询问28):

IMG_2056.JPG 询问28的mac地址需要在本局域网内部进行广播,因此Address:ff:ff:ff:ff:ff:ff

进行广播 查询,Message:who has ip ...28

回复arp显示(28回复29)

IMG_2057.JPG

28收到了arp请求,那么将自身的ip发送给29,Des为29的mac地址

上面介绍了服务开放的一些事项,主要是将抓包进行分析网络报文的,共勉