week04

1.简述一下DNS解析过程

  • 登录微信过程DNS解析截图

    • 微信电脑端访问的域名是dldir1.qq.com
    • 本次解释使用的是本地配置的DNS服务114.114.114.114
    • 上述域名还有其他别名(根据CNAME记录可知)dldir1.qq.com ---> dldir.tc.qq.com -->dldir1.legao.sched.dlcloudstc.com
    • 真实的主机有多条A记录,说明该DNS服务器有多个ip地址

    image

  • 完整的dns解析过程
    image

  1. 客户端通过pc登录微信,这一过程会发出解析该dldir1.qq.com域名的请求到本地配置的DNS服务器
  2. 本地DNS服务器收到该请求后,先去查看本地缓存中是否有相关记录,如果有则直接返回解析结果;没有则由其代为向根域名服务器发起迭代查询。
  3. 本地DNS服务器访问根域服务器,获取.com的一个ip地址
  4. 本地DNS服务器拿着获取到的ip地址访问顶级域.com,获取qq.com的一个ip地址
  5. 本地DNS服务器用获取到的ip地址继续qq.com,获取dldir1.qq.com的相关解析信息
  6. 本地DNS服务器将获取到的解析信息返回给客户端
  7. 客户端根据解析的结果使用对应的ip访问目标服务器

递归和迭代的区别

  • 客户端向本地DNS服务器查询的过程称为递归查询
    • 客户端把请求”递“给DNS服务器,由其代为进行余下的查询,只需要将最终结果”归“还给自己即可
    • 客户端的请求只发给本地DNS服务器,由其返回最终结果;多次查询重复类似的过程。
    • 递归(recursion):递归常被用来描述以自相似方法重复事物的过程
  • 本地DNS服务器向互联网上的权威域名服务器查询的过程成为迭代查询
    • 本地DNS服务器先向上级域名服务器发起查询请求,返回结果后继续向下一级的域名服务器发起查询请求
    • 每次的请求都是由自己发起的,对方只返回结果
    • 迭代(iteration):重复反馈过程的活动,每一次迭代的结果会作为下一次迭代的初始值。

2.iptables配置只能访问80端口服务,然后拒绝所有

配置过程:

#允许访问本机的22和80端口
[root@node1 ~]# iptables -t filter -I INPUT -m multiport -p tcp --dports 80,22 -j ACCEPT

#追加一条拒绝所有的命令,这里使用-A而不是-I,-I会插入到上一条命令的前面,导致上一条不生效
[root@node1 ~]# iptables -t filter -A INPUT -j REJECT   
[root@node1 ~]# iptables -vnL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   71  4548 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 80,22
    1   147 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable

测试过程:

除了80和22端口外其他都拒绝访问

[root@master ~]# telnet 192.168.1.136 80   
Trying 192.168.1.136...
Connected to 192.168.1.136.
Escape character is '^]'.
^CConnection closed by foreign host.
[root@master ~]# telnet 192.168.1.136 22
Trying 192.168.1.136...
Connected to 192.168.1.136.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.4
^C^C^C^C^C
Connection closed by foreign host.
[root@master ~]# ping 192.168.1.136
PING 192.168.1.136 (192.168.1.136) 56(84) bytes of data.
From 192.168.1.136 icmp_seq=1 Destination Port Unreachable
From 192.168.1.136 icmp_seq=2 Destination Port Unreachable
From 192.168.1.136 icmp_seq=3 Destination Port Unreachable
^C
--- 192.168.1.136 ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2031ms

注意事项:

  • 除了80全部禁掉会导致ssh远程连接不能访问,故开启了80和22端口的访问
  • reject所有的规则一定要放在最下面
posted @ 2021-07-01 14:34  天友xz  阅读(289)  评论(0)    收藏  举报