一、端口号的定义
端口表示当前计算机上的一个进程。
例如:手机开着 微信 王者 QQ 这时候我们使用QQ给对方发送一条消息,这时我们要知道对方的ip地址,这样才能到达指定的位置,但是消息到了指定位置,又怎么知道这个消息就是发送给QQ,而不是微信或者给其他应用的呢,这就需要端口号来指定具体的进程,
ip地址相当于寄快递时候你要寄到哪一家,而端口号就相当于你寄到这个家里具体给谁,
端口号可以唯一的标识一台主机上的应用程序,从而实现消息的精准送达,站在传输层的角度,收到的数据包在解包以后,要向上交付给应用层,而要具体交付给应用层额哪一个程序,就需要利用端口号来指定。
二、端口号的划分
- 端口号:16位的无符号整型数 范围:0-65535
- 1-1023: 被系统占用
- 1024~19450:注册端口(可用),我们在模拟TCP/UDP的时候,程序提示端口号被占用了,就是因为这个范围额端口号没有固定分配给哪个应用程序的
- 49151~65535:动态或私有端口
想通过网络访问某个具体的进程,必须有端口号指引;
访问一个服务器时,加入使用的是http或者https协议
http:常见端口 80 8080
https:常见端口 443 8443
知名端口号:
- SSH服务器:22端口
- FTP服务器:21端口
- telnet服务器:23端口
- http服务器:80端口
- https服务器:443端口
三、端口号与进程之间的关系
端口号要标识一台主机上的应用程序,所以一个端口号不能被多个进程使用,
但一个进程可以拥有多个端口号,只要能通过端口号找到指定的进程即可,
四、查看端口号
首先Win+R打开窗口,输入cmd,进入命令提示符
netstat -ano //查看本机所有的端口号
- netstat -ano|findstr " 8080" #查找具体端口 查看8080的端口
- 回车之后就可以看见列表中的PID,然后根据PID在电脑的任务管理器中查看对应的占用程序,接着进行关闭即可
- ctrl + shift + esc #打开任务管理器
- 任务管理器中PID位于“详细信息”一栏中
具体操作可参考这位博主:Windows查看所有的端口号及其程序_褶皱的包子的博客-CSDN博客_windows 端口号
五、netstat其他命令
我们如果需要查看某个服务绑定的端口号所处的状态,,这个时候我们就可以使用netstat指令,netstat指令是查看网络状态的重要工具。
- n 拒绝显示别名,能显示数字的全部显示数字
- l 仅列出监听状态的服务
- p 显示建立相关连接的程序名
- t 仅显示tcp相关选项
- u 仅显示udp相关选项
- a 显示所有的选项,默认不显示listen状态相关的