IP && 端口号

IP && 端口号

一: IP

IP地址是网络层提供的概念,通过IP地址我们可以确定主机.

二:端口号

端口号是传输层提供的概念

一个端口号对应一个进程,用来区分不同的应用程序 .

端口号是一个2个字节表示的无符号整数,范围:0->65535

2.1:知名端口号

把小于1024的端口号拿出来,称为"知名端口号",把这些端口号分配给一些比较知名的服务器程序,作为这些服务器的"默认端口号".

知名端口号指的是上个世纪,比较知名的服务器,但现在很多服务器已经看不到了

我们自己写的服务器程序,最好避开知名端口号,有些系统上,要使用知名端口号,需要管理员权限.

2.2:端口号的重复问题

(1)同一个机器上,同一时刻,端口号不能被重复绑定,也就是两个进程不能绑定同一个端口号.

进程A绑定了10000这个端口号,此时进程B也尝试绑定10000端口号,就会绑定失败.

(2)但如果一个服务器是TCP,一个是UDP,端口号重复了,是不影响的,

但如果两个TCP/两个UDP,使用同一个端口号,就会出现上述绑定失败的情况了.

(3)一个进程,同一时刻,同时绑定多个端口号

有一个进程A,绑定10000,在绑定10001,10002...这样的操作是可以的.而且在开发中经常使用这样的操作.

比如:写一个服务器程序

业务端口:

-------给普通用户使用的

首先,服务器需要有一个端口号,给客户端提供业务功能(给普通用户用的),这样的端口,称为"业务端口".

管理端口

-------主要给程序员和运营人员使用

还要满足程序员对这个服务器进行更精细的控制:比如控制让这个服务器重新加载配置/开启某个功能/重新启动/重新加载数据/修改某个选项设定...

这样的操作,经常会通过网络来进行操作,服务器就会另外绑定一个端口号,称为"管理端口",程序员想对这个服务器进行管理操作,就通过管理端口给服务器发送一些对应的请求,然后服务器就会执行对应的逻辑.

调试端口

-------主要给程序员使用

日常开发中,会遇到一些bug,需要去查看服务器的一些运行状态(比如服务器中的一些关键的变量是什么值...)服务器是不能直接通过调试器去调试(调试器一调试就会把服务器阻塞住,无法给别的客户端提供服务了),而是通过网络的方式,给服务器发调试请求,服务器会返回对应的关键信息,这样的端口称为"调试端口"

2.3:如何确认端口号是否被其他进程占用???

java 复制代码
netstat -ano | findstr 9090
//netstat 是一个命令,ano 是一个命令行参数,类似函数参数
//findstr也是一个命令,表示从一个文件中查找9090这个字符串
//上面代可以认为是:把第一个命令输出的内容,作为第二个命令的输入
// 通过 | 管道,就可以达成从netstat的输出结果中查询结果了
相关推荐
黑桃小柒76 小时前
小,最终显示为TCP WINDOW FULL,TCP ZeroWindow。 仔细分析了下LWIP源码,还以为是内存管理出了问题,跟 ...
网络·网络协议·tcp/ip
网络研究院8 小时前
LastPass 发布紧急安全预警:针对主密码的活跃网络钓鱼攻击正在进行中
网络·安全·黑客·攻击·漏洞·风险·钓鱼
便利店10249 小时前
TCP 为什么有时故意跑不快?拥塞控制与滑动窗口一次讲清
服务器·网络协议·tcp·拥塞控制
向夏威夷 梦断明暄9 小时前
【高效管理token成本】OpenClaw精细化分库管理memory以减少token成本的方案的可行性研究
网络
vance0410 小时前
免费Cloudflare隧道隐藏公网IP
linux·tcp/ip·github
酷可达拉斯12 小时前
Linux操作系统-免密登录远程操作系统
linux·运维·服务器·网络·云计算
aixingkong92112 小时前
AI超节点Scale Up域总线各层优化设计
linux·服务器·网络
组合缺一14 小时前
Solon 的 10 种 HTTP 服务器:改一行依赖,换一个引擎
java·服务器·网络协议·http·solon
2601_9537208215 小时前
【计算机毕业设计】基于Java EE的物流快递跟踪平台设计与实现
java·java-ee·课程设计
瓦学妹15 小时前
为什么您的AI总是显示“不支持的区域”?如何解决?
大数据·网络·人工智能