`

端口号

 
阅读更多

一些命令:

$ cat /etc/services 

$ telnet 127.0.0.1 400

$ netstat -an | grep 8080  #check whether port is in use

 

//注释

[root@bbs /etc]# telnet 127.0.0.1 4000Trying 127.0.0.1...telnet: Unable to connect to remote host: Connection refused那么说明系统中没有程序使用4000端口,你可以放心的使用了。技巧:如果你自己写了一个Server和Client ,但是Client却无法连上Server而你又不知道究竟是哪个有问题的时候,你可以使用系统的工具telnet来帮助你。如果你的Server监听的端口是4000 ,那么可以直接使用telnet去连接4000端口。如果使用telnet连接正常,那么你就可以确定你的Server运行正常.

 

 

大多数网络应用程序使用两个协议:传输控制协议(TCP)和用户数据包协议(UDP)。他们都使用一个端口号以识别应用程序。

 

端口号为主机上所运行之程序所用,这样就可以通过号码象名字一样来跟踪每个应用程序。端口号让操作系统更容易的知道有多少个应用程序在使用系统,以及哪些服务有效。理论上,端口号可由每台主机上的管理员自由的分配。但为了更好的通信通常采用一些约定的协议。这些协议使能通过端口号识别一个系统向另一个系统所请求的服务的类型。基于如此理由,大多数系统维护一个包含端口号及它们所提供哪些服务的文件。

 

端口号被从1开始分配。通常端口号超出255的部分被本地主机保留为私有用途。1到255之间的号码被用于远程应用程序所请求的进程和网络服务。每个网络通信循环地进出主计算机的TCP应用层。它被两个所连接的号码唯一地识别。这两个号码合起来叫做套接字.组成套接字的这两个号码就是机器的IP地址和TCP软件所使用的端口号。因为网络通讯至少包括两台机器,所以在发送和接收的机器上都存在一个套接字。由于每台机器的IP地址是唯一的。端口号在每台机器中也是唯一的,所以套接字在网络中应该是唯一的。这样的设置能使网络中的两个应用程序完全的基于套接字互相对话。发送和接收的机器维护一个端口表,它列出了所有激活的端口号。两台机器都包括一个进程叫做绑定,这是每个任务的入口,不过在两台机器上恰恰相反。换句话说,如果一台机器的源端口号是23而目的端口号被设置成25,那么另一台机器的源端口号设置成25目的端口号设置成23。

 

系统留有1024个保留端口。这些端口是留给系统使用的,在系统中,只有具有Root权利的人才可以使用1024以下的端口(包括1024)

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics