﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-软件工艺之路……-文章分类-其他</title><link>http://www.blogjava.net/t19y80/category/2005.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 12:34:19 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 12:34:19 GMT</pubDate><ttl>60</ttl><item><title>Windows 端口简介及侦测</title><link>http://www.blogjava.net/t19y80/articles/7150.html</link><dc:creator>Tianye</dc:creator><author>Tianye</author><pubDate>Tue, 05 Jul 2005 08:59:00 GMT</pubDate><guid>http://www.blogjava.net/t19y80/articles/7150.html</guid><wfw:comment>http://www.blogjava.net/t19y80/comments/7150.html</wfw:comment><comments>http://www.blogjava.net/t19y80/articles/7150.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/t19y80/comments/commentRss/7150.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/t19y80/services/trackbacks/7150.html</trackback:ping><description><![CDATA[<FONT color=#330099>什么是端口</B></FONT> <BR><BR>在网络技术中，端口（Port）有好几种意思。集线器、交换机、路由 器的端口指的是连接其他网络设备的接口，如RJ-45端口、Serial端口等。我们 这里所指的端口不是指物理意义上的端口，而是特指TCP/IP协议中的端口，是逻 辑意义上的端口。 <BR><BR>那么TCP/IP协议中的端口指的是什么呢？如果把IP地址比作一间房子 ，端口就是出入这间房子的门。真正的房子只有几个门，但是一个IP地址的端口 可以有65536个之多！端口是通过端口号来标记的，端口号只有整数，范围是从0 到65535。 <BR><BR>端口有什么用呢？我们知道，一台拥有IP地址的主机可以提供许多服 务，比如Web服务、FTP服务、SMTP服务等，这些服务完全可以通过1个IP地址来 实现。那么，主机是怎样区分不同的网络服务呢？显然不能只靠IP地址，因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区 分不同的服务的。 <BR><BR>需要注意的是，端口并不是一一对应的。比如你的电脑作为客户机访 问一台WWW服务器时，WWW服务器使用“80”端口与你的电脑通信，但你的电脑则 可能使用“3457”这样的端口，如图1所示。 <BR><BR><BR>
<CENTER><IMG src="http://soft.269.net/images7/178960.jpg"> <BR><BR>　　图1</CENTER><BR><BR>按对应的协议类型，端口有两种：TCP端口和UDP端口。由于TCP和UDP 两个协议是独立的，因此各自的端口号也相互独立，比如TCP有235端口，UDP也 可以有235端口，两者并不冲突。 <BR><BR><B><FONT color=#330099>端口是怎样分配的</FONT></B> <BR><BR>与IP地址一样，端口号也不是随意使用的，而是按照一定的规定进行 分配。端口的分类标准有好几种，我们这里不做详细讲解，只介绍一下周知端口 和动态端口。 <BR><BR><B>1.周知端口（Well Known Ports）</B> <BR><BR>周知端口是众所周知的端口号，范围从0到1023，其中80端口分配给W WW服务，21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候（ 比如www.cce.com.cn）是不必指定端口号的，因为在默认情况下WWW服务的端口 号是“80”。 <BR><BR>网络服务是可以使用其他端口号的，如果不是默认的端口号则应该在 地址栏上指定端口号，方法是在地址后面加上冒号“:”（半角），再加上端口 号。比如使用“8080”作为WWW服务的端口，则需要在地址栏里输入“www.cce.c om.cn:8080”。 <BR><BR>但是有些系统协议使用固定的端口号，它是不能被改变的，比如139 端口专门用于NetBIOS与TCP/IP之间的通信，不能手动改变。 <BR><BR><B>2.动态端口（Dynamic Ports）</B> <BR><BR>动态端口的范围是从1024到65535。之所以称为动态端口，是因为它 一般不固定分配某种服务，而是动态分配。动态分配是指当一个系统进程或应用 程序进程需要网络通信时，它向主机申请一个端口，主机从可用的端口号中分配 一个供它使用。当这个进程关闭时，同时也就释放了所占用的端口号。</SPAN> <BR>
<P align=center>　　 <BR><BR><SPAN class=p11><B><FONT color=#330099>怎 样查看端口</FONT></B> <BR><BR>一台服务器有大量的端口在使用，怎么来查看端口呢？有两种方式： 一种是利用系统内置的命令，一种是利用第三方端口扫描软件。 <BR><BR><B>1.用“netstat －an”查看端口状态</B> <BR><BR>在Windows 2000/XP中，可以在命令提示符下使用“netstat -an”查 看系统端口状态，可以列出系统正在开放的端口号及其状态，如图2所示。 <BR><BR><BR>
<CENTER><IMG src="http://soft.269.net/images7/178961.jpg"> <BR><BR>　　图2</CENTER><BR><BR><B>2.用第三方端口扫描软件</B> <BR><BR>第三方端口扫描软件有许多，界面虽然千差万别，但是功能却是类似 的。这里以“Fport” （可到http://www.ccert.edu.cn/tools/index.php?type_t=7或http://www.cci dnet.com/soft/cce下载）为例讲解。“Fport”在命令提示符下使用，运行结果 与“netstat -an”相似，但是它不仅能够列出正在使用的端口号及类型，还可 以列出端口被哪个应用程序使用，如图3所示。 <BR><BR><BR>
<CENTER><IMG src="http://soft.269.net/images7/178962.jpg"> <BR><BR>　　图3</CENTER><BR><BR><B><FONT color=#330099>怎样管理端口</FONT></B> <BR><BR>黑客程序是通过系统的端口漏洞来入侵系统的，因此对端口的管理是 网管工作的一个非常重要的方面。怎样来管理端口呢？可以采用两种方法：一种 方法是利用系统内置的管理工具，另一种方法是利用第三方软件来实现。 <BR><BR><B>1.用“TCP/IP筛选”管理端口</B> <BR><BR>在Windows 2000 Server中，双击任务栏右下角的网络连接图标，再 双击打开“本地连接状态”对话框，点击[属性]按钮，再选中“Internet协议（ TCP/IP）”，然后点击[属性]按钮，在弹出的“Internet协议（TCP/IP）”对话 框中点击[高级]按钮。在“高级TCP/IP 设置”中选择“选项”标签，选中“TCP/IP筛选”，然后点击[属性]按钮。在“ TCP/IP筛选”对话框里选择“启用TCP/IP筛选”的复选框，然后把左边“TCP端 口”上的“只允许”选上。增加你允许使用的端口，如“80”、“21”、“25” 等（如图4所示），重新启动以后未经允许的端口就关闭了。 <BR><BR><BR>
<CENTER><IMG src="http://soft.269.net/images7/178963.jpg"> <BR><BR>　　图4</CENTER><BR><BR><B>2.用第三方软件管理端口</B> <BR><BR>管理端口最常用的第三方软件就是防火墙软件了。其实防火墙就是一 整套制定好的IP地址及其端口的访问规则，你可以改变这些规则来打开和关闭指 定的端口。 <BR><BR><BR>
<CENTER><IMG src="http://soft.269.net/images7/178964.jpg"> <BR><BR>　　图5</CENTER><BR><BR>图5是瑞星个人防火墙的端口管理界面。如果你想关闭本机的TCP或UD P端口，在“操作”项中选择“禁止”，在“方向”中选择“双向”（如果只想 禁止接收功能，则选择“接收”；只想禁止发送，则选择“发送”），在“协议 ”中选择“TCP”或“UDP”。 <BR><BR>选择上述参数后，在“目的端口设置”中进行设置：如果只想关闭一 个端口，就选择“一个端口”，然后在列表中输入端口号；如果想关闭一定范围 内的连续端口，就在“起始端口号”输入起始端口，在“终止端口号”中输入终 止端口；如果想关闭不连续的多个端口，就选择“端口列表”；而选择“任何端 口”就是禁止所有端口。 <BR><BR>千万注意：如果不理解参数的意思，切勿自行修改！否则可能会在系 统中增加漏洞，或者导致系统无法进行正常通信。</SPAN><img src ="http://www.blogjava.net/t19y80/aggbug/7150.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/t19y80/" target="_blank">Tianye</a> 2005-07-05 16:59 <a href="http://www.blogjava.net/t19y80/articles/7150.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>