10-网络协议和管理-基础篇
1.使用wireshark工具抓包
2.目标mac地址,Dst: Broadcast (ff:ff:ff:ff:ff:ff)就是广播地址,源地址永远是这个机器的地址
3.WLAN原理
WLAN数量是2*12=4096个wlan,VLAN ID取值范围是0~4095。由于0和4095 为协议保留取值,所以VLAN ID的有效取值范围是1~4094 ,对于目前的云环境来说,远远不够用,引入VXLAN。
4.分层的网络架构
5.TCP/IP协议
源端口、目标端口是用16位表示的,由此可推算计算机的端口个数为2^16个,即65536端口;
- 0-1023:系统端口或特权端口(仅管理员可用) ,众所周知,永久的分配给固定的系统应用使用, 22/tcp(ssh), 80/tcp(http), 443/tcp(https)
- 1024-49151:用户端口或注册端口,但要求并不严格,分配给程序注册为某应用使用, 1433/tcp(SqlServer), 1521/tcp(oracle),3306/tcp(mysql),11211/tcp/udp (memcached)
-
49152-65535:动态或私有端口,客户端随机使用端口,范围定 义:/proc/sys/net/ipv4/ip_local_port_range
6.TCP包头
7.TCP20个字节
8.TCP:电脑上的应用程序怎么通信,靠端口!端口不能冲突。
8.1一般服务端是固定的,客户端可以不固定。比如用x-shell连接linux虚拟机,
8.2再次连接,发现客户端的端口变了,服务器的始终是22号端口
8.3客户端在范围内随机使用端口
8.4端口可能存在不够的情况,修改一下范围就广了
[root@centos8 ~]#cat /proc/sys/net/ipv4/ip_local_port_range 32768 60999 [root@centos8 ~]#echo 1024 65500 > /proc/sys/net/ipv4/ip_local_port_range [root@centos8 ~]#cat /proc/sys/net/ipv4/ip_local_port_range
8.5系统中常见的服务端口号查看目录
cat /etc/services
8.6比如前面提到的ssh连接,使用的就是22端口
8.7过滤端口号,无人使用该端口号
8.8经典面试题:
8.8.1有一个问题: httpd和nginx默认都是使用80/tcp端口的,容易起冲突,该怎么解决?
8.8.2个应用都安装一下,故意让彼此冲突dnf -y install httpd nginx
8.8.3使用systemctl start nginx命令,开启服务之后对比,80端口被占用了
8.8.4使用ss -ntlp 可以查看端口具体被哪个服务占用,可以看到80被nginx占用,有个pid的进程编号为24501的在使用80端口
8.8.5 同时我们也可以使用另外一个命令 lsof -i :80 (:和80不能有空格)也可以查看
8.8.6其他http失败 #systemctl start httpd,80端口被占用了起不来
8.8.7看看有没有报错说明,不能绑定80端口
使用#cat /var/log/messages 查看日志
8.8.8 停用nginx,打开httpd,然后看到80端口又有了
#systemctl stop nginx (#停用nginx) #ss -ntl #systemctl start httpd (#开启httpd) #ss -ntl
8.8.9 ss -ntlp 详细信息,可以看到80被httpd占用,有个pid的进程编号为24529的在使用80服务端口
8.8.10常用的协议的端口
常用的网络协议端口号:
端口:22 服务:ssh
端口:23 服务:Telnet
端口:25 服务:SMTP
端口:53 服务:Domain Name Server(DNS)
端口: 67 服务: Bootstrap Protocol Server
端口: 69 服务:TFTP
端口:80 服务:HTTP
端口:109 服务:Post Office Protocol -Version3
端口:993 服务:IMAP
端口:1433 服务:SQL
端口:6379 服务:Redis
技术交流,如有错误请指正~未完待续~