工控网络基础入门篇之端口
我们知道一台电脑要联网的软件 (进程) 其实是很多的,这就需要给不同的软件分配不同的通道以区别他们的数据,否则所有的进程都在一条通道上收发数据,那么不同协议不同规范的数据毫无规则的混在在一起,就完全没有意义了,或者代价就是每个进程都要把所有数据都先截获下来,再慢慢提取出属于自己的那部分数据,这显然是不可能的。
那么端口就起了这样的作用,端口为不同的进程/协议分配了不同的端口,例如针对浏览器的 http 服务器协议是 80 端口,https 是 443 端口,ftp 数据传输是 21 端口,ssh 远程登录是 22 端口,telnet 是 23 端口,DNS 解析是 53 端口,不同的协议使用不同的端口,数据就很清晰了,对于一个端口上的数据就肯定有一个统一的协议来解析了。这就好像紫禁城的 N 个城门,每个门都有自己特殊的用途,给不同的人和不同的车走一样,这些门就是紫禁城的端口。
注意,以上列出的标准端口都是针对服务器而言的,因为很多通信协议默认都是使用这些标准端口,你如果擅自改成别的端口,客户端并不知晓,就不知道该向哪里请求了。例如有些网站给自己的内部管理服务器改成了 8080 端口或者别的端口,这样可以避免别人发现后台的地址 (其实别人要扫描端口也可以发现),只有知道端口的人才能访问。按照规定 0∼1023 端口都是预留给特定协议的端口范围,其他的应用和私有的协议不应该使用这个范围内的关口,否则可能和现有的服务协议造成端口冲突。
端口的连接是双方的,服务器有一个端口,客户端要连接也必须有一个对应的端口。服务器的端口一般要固定,以便让别人连接; 而在客户端这里,就完全可以用各种不同的端口了,DNS 协议为了增强安全性,客户端的端口甚至应该鼓励增强随机性,最好每次都不同。好比皇帝出去祭天要走特定的门不能变,可是要微服私访就得灵活一点了,不然行踪就容易暴露了。
重磅福利
在此,小编特意备了一份薄礼,等你来学习
点击写留言,谈谈你的感受,想法!
《工控网络基础入门篇》每期挑选一名积极、热心网友
获得U盘一个