网络端口之一端口简介
2011-08-19 13:51
134 查看
由于TCP/IP传输层的 TCP和UDP两个协议是两个完全独立的软件模块,因此各自的端口号也相互独立。如TCP有一个255号端口,UDP也可 以有一个255号端口,两者并不冲突。
端口号有两种基本分配方式:
第一种叫全局分配这是一种集中分配方式,由一个公认权威的中央机构根据用户需要进行统一分配,并将结果公布于众;
第二种是本地分配,又称动态连接,即进程需要访问传输层服务时,向本地操作系统提出申请,操作系统返回本地唯一的端口号,进程再通过合适的系统调用,将自己和该端口连接起来( binding,绑定)。
TCP/IP端口号的分配综合了以上两种方式,将端口号分为两部分,少量的作为保留端口,以全局方式分配给服务进程。每一个标准服务器都拥有一个全局公认的端口叫周知口,即使在不同的机器上,其端口号也相同。剩余的为自由端口,以本地方式进行分配。
TCP和UDP规定,小于256的端口才能作为保留端口。
按端口号可分为3大类:
(1)公认端口(Well Known Ports):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
(2)注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
(3)动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。
系统管理员可以"重定向"端口:
一种常见的技术是把一个端口重定向到另一个地址。例如默认的HTTP端口是80,不少人将它重定向到另一个端 口,如8080。如果是这样改了,要访问本文就应改用这个地址
http://wwd.3322.net:8080/net/port.htm(当然, 这仅仅是理论上的举例)。
实现重定向是为了隐藏公认的默认端口,降低受破坏率。这样如果有人要对一个公认的默认端口进行攻击则必须先进行端口扫描。大多数端口重定向与原端口有相似之处,例如多数HTTP端口由80变化而来:81,88,8000, 8080,8888。同样POP的端口原来在110,也常被重定向到1100。也有不少情况是选取统计上有特别意义的数,象 1234,23456,34567等。许多人有其它原因选择奇怪的数,42,69,666,31337。
近来,越来越多的远程控制木马 (Remote Access Trojans, RATs )采用相同的默认端口。如NetBus的默认端口是12345。
Blake R. Swopes指出使用重定向端口还有一个原因,在UNIX系统上,如果你想侦听1024以下的端口需要有root权限。如果你没有root权限而又想开web服务,你就需要将其安装在较高的端口。此外,一些ISP的防火墙将阻挡低端口的通讯,这样的话即使你拥有整个机器你还是得重定向端口。
端口号有两种基本分配方式:
第一种叫全局分配这是一种集中分配方式,由一个公认权威的中央机构根据用户需要进行统一分配,并将结果公布于众;
第二种是本地分配,又称动态连接,即进程需要访问传输层服务时,向本地操作系统提出申请,操作系统返回本地唯一的端口号,进程再通过合适的系统调用,将自己和该端口连接起来( binding,绑定)。
TCP/IP端口号的分配综合了以上两种方式,将端口号分为两部分,少量的作为保留端口,以全局方式分配给服务进程。每一个标准服务器都拥有一个全局公认的端口叫周知口,即使在不同的机器上,其端口号也相同。剩余的为自由端口,以本地方式进行分配。
TCP和UDP规定,小于256的端口才能作为保留端口。
按端口号可分为3大类:
(1)公认端口(Well Known Ports):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
(2)注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
(3)动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。
系统管理员可以"重定向"端口:
一种常见的技术是把一个端口重定向到另一个地址。例如默认的HTTP端口是80,不少人将它重定向到另一个端 口,如8080。如果是这样改了,要访问本文就应改用这个地址
http://wwd.3322.net:8080/net/port.htm(当然, 这仅仅是理论上的举例)。
实现重定向是为了隐藏公认的默认端口,降低受破坏率。这样如果有人要对一个公认的默认端口进行攻击则必须先进行端口扫描。大多数端口重定向与原端口有相似之处,例如多数HTTP端口由80变化而来:81,88,8000, 8080,8888。同样POP的端口原来在110,也常被重定向到1100。也有不少情况是选取统计上有特别意义的数,象 1234,23456,34567等。许多人有其它原因选择奇怪的数,42,69,666,31337。
近来,越来越多的远程控制木马 (Remote Access Trojans, RATs )采用相同的默认端口。如NetBus的默认端口是12345。
Blake R. Swopes指出使用重定向端口还有一个原因,在UNIX系统上,如果你想侦听1024以下的端口需要有root权限。如果你没有root权限而又想开web服务,你就需要将其安装在较高的端口。此外,一些ISP的防火墙将阻挡低端口的通讯,这样的话即使你拥有整个机器你还是得重定向端口。
相关文章推荐
- 常用网络端口简介
- Android网络编程基础简介
- 【网络基础】地址解析协议(ARP协议)简介
- Flume实战监听网络端口
- VMware vSphere服务器虚拟化实验一ESXi 5.1简介与通过PXE网络部署
- VMware虚拟化--网络和存储功能简介 推荐
- 完成端口CreateIoCompletionPort编写高性能的网络模型程序
- TCP常用网络和木马使用端口对照表
- Android网络通信库Volley简介
- Mac下查看网络端口占用情况
- 网络之端口的作用
- 人工神经网络简介
- 135 137 138 139 445 端口简介
- 网络端口安全防护技巧
- 关于网络一_WebView用法简介
- 网络安全知识之Cross-Site Request Forgery (CSRF) 简介
- linux_c 网络开发日记(2)GDB简介
- win下如何查看那个网络端口被那个应用程序使用
- 机器学习与神经网络(一):人工神经网络模型简介