littlecp
驱动牛犊
驱动牛犊
  • 注册日期2004-05-26
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1783回复:2

如何检测本机是否启用了路由网关功能和代理服务?

楼主#
更多 发布于:2004-07-19 01:41
用于客户端的检测,看是否用了wingate,sygate,或连接共享。
不知道如何下手,还望各位大牛指点,谢谢
wigner178
驱动牛犊
驱动牛犊
  • 注册日期2003-09-15
  • 最后登录2004-10-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-19 15:39
分析数据包头。
想一想代理数据包与一般的数据包有什么区别。
比如目的mac呀什么的。
抓住了本质区别,就能够检测出来了。
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-07-20 09:27
STUN协议(RFC 3489)
STUN协议的全称是Simple Traversal of User Datagram Protocol Through Network Address Translators,
主要功能是检测是否位于NAT后面,如果位于NAT后面,经过NAT转换后的地址和端口是什么,另外可以检测NAT的类型


基本思想

在私网内部安装一个STUN client,在公网上安装一个STUN Server,STUN协议定义了一些消息格式,大体上分成Request/Response,client向server发送request,server发送response给client

如何检测STUN client是否在NAT后面呢?原理很简单,Server在收到client的UDP包以后,Server将接收到该包的地址和端口利用udp传回来给client,client把这些地址和端口与本机的ip地址和端口进行比较,如果不同,说明在NAT后面,否则就位于NAT后面

为了检测不同类型的NAT,STUN协议定义了一些消息属性,要求Server有不同的动作,比如发送响应的时候使用不同的IP地址和端口,或者改变端口等等

STUN协议对NAT可能有效,但是对防火墙就无能为力了,因为防火墙可能不会打开UDP端口,我现在就有利用TCP传输媒体流

 
2004年7月8日 #

p2p环境下udp的nat穿透
http://midcom-p2p.sourceforge.net

http://www.ppcn.net/show.aspx?id=1306&cid=2
放弃瘟草,现吃李草
游客

返回顶部