什么软件使用端口UDP 9011
两台电脑,连接在同一个路由器上。
设发送端电脑为A,接收端为B。
server运行在A上,两个客户端client1(使用9012端口)和client2(使用9011端口)运行在B上。
A使用9001端口给B电脑的9012和9011端口发送两条相同的数据包(数据长度为11字节,使用sendto发送,先发送到9012端口,再发送到9011端口)确认网络状况良好,电脑状况良好,代码无问题:C/C++ code?12345678910111213141516171819202122232425intlen_head=sizeof(modbus->stx)+sizeof(modbus->address)+sizeof(modbus->command)+sizeof(modbus->len);intlen_data=modbus->getDataLength();intlen_tail=sizeof(modbus->fcs);intlength=len_head+len_data+len_tail;if(length>MAX_UDP_PACKET_SIZE)returnX_UDP_TOOMUCH_DATA;CHAR*pBuf=(CHAR*)_alloca(length);memcpy(pBuf,modbus,len_head);if(len_data>0)memcpy(pBuf+len_head,modbus->data,len_data);memcpy(pBuf+len_head+len_data,modbus->fcs,len_tail);inttotal=0;while(total{intsended=sendto(g_socket,pBuf+total,length-total,0,(sockaddr*)addr,sizeof(sockaddr));if(sendedbreak;total+=sended;}returntotal==length?X_UDP_OK:X_UDP_WRITE_FAILED;现在碰到的问题是:server程序刚启动时,server发送到client1和client2的指令均可以被成功接收;如果一直发送(每次都是先给client1发送,接着马上给client2发送)没有问题;但是如果server软件间隔几十分钟不操作后,server再次发送指令到client1和client2,会发现client1无法接收到任何数据,而client2正常接收。
再次操作,发送client1和client2都可以正常接收。
用SNIFFER运行在B电脑上监控网络数据,发现只有一个发到9011端口的UDP包,而发往9012端口的包无影无踪。
在发到9011端口的数据包前有一个WINSNameService包(这个应该没有影响)。
用IRIS软件监控A电脑上的数据,亦只有发现一个发往B电脑9011端口的UDP包,发往9012端口的包在server段亦未监控到。
在代码内有OutputDebugString辅助调试,可以确认有调用sendto给B电脑的9012端口发数据。
怎样连接udp
在防火墙上钻孔【UDP Hole Puching】:穿透防火墙建立UDP连接 知道现在流行的P2P软件和IM软件是如何让两台分处在不同防火墙后面的电脑直接对话的吗?SIP当然是一种,还有一种被广泛应用的就是本文介绍的UDP Hole Puching技术。
为了便于讲述,我们假设有这样一个网络拓扑结构: IP=A.A.A.A IP=1.1.1.1 HostA----------FirewallA---------| | Server IP=S.S.S.S | HostB----------FirewallB---------| IP=B.B.B.B IP=2.2.2.2 运用这个技术,必须满足下面的条件: 1) HostA和HostB分别通过FirewallA和FirewallB经过NAT用UDP连接到了Server 2) FirewallA和FirewallB都满足这样的特性,即来自相同IP相同Port的数据包,不管目的地IP是多少, 都会NAT成相同的IP+Port,举个例子吧: HostA通过UDP Port 1234访问主机S1时,防火墙会把数据包NAT成1.1.1.1:5668(举例),那么HostA通过UDP Port 1234访问主机S2时,防火墙仍然会把数据包NAT成1.1.1.1:5668。
好在现在的NAT基本上都具备这个特性。
现在,HostA用UDP端口1111连接到Server的5555端口,HostB用端口2222连接到Server的5555端口,在Server看来,HostA来自1.1.1.1:9676(FirewallA NAT过了嘛),HostB则来自2.2.2.2:6573。
当HostA想直接连接HostB时,它这样做: 1)用UDP端口1111发一个数据包给2.2.2.2:6573,注意一定要用端口1111哦,这个数据包一定会被FirewallA NAT成 1.1.1.1:9676 -> 2.2.2.2:5668(不要问为什么,看看前面对防火墙的要求先); 千万别期望HostB会收到这个数据包,因为当包到达FirewallB时,FirewallB被弄糊涂了,它根本不知道 1.1.1.1:9676 -> 2.2.2.2:6573的数据包应该转给谁,当然这个包就会被丢弃并回一个ICMP包说Port不存在。
但是,我们还是得到了我们想要的一些东西,那就是我们成功地告诉了FirewallA "如果有2.2.2.2:6573 -> 1.1.1.1:9676的数据包,请转发到A.A.A.A:1111",这就是一个洞洞!! 2)接下来,和你想象的一样,HostA通过Server中转,告诉HostB,用端口2222发一个数据包到1.1.1.1:9676,HostB照办了,而且这个包一定会被FirewallB NAT成 2.2.2.2:6573 -> 1.1.1.1:9676。
这个回复的数据包同样在FirewallB上钻了个孔,凡是1.1.1.1:9676 -> 2.2.2.2:6573的包都会被转发到B.B.B.B:2222,当数据包到达FirewallA时,FirewallA很高兴地把2.2.2.2:6573 -> 1.1.1.1:9676的数据包转发给A.A.A.A:1111。
3)大功告成了,HostA和HostB开始愉快的交谈起来。
很简单吧?不过实施起来还要注意几点,否则你都不知道为什么总连不上: 1) 步骤1中那个Port不存在的ICMP是个杀手,至少对Linux上用iptables做的NAT来讲是这样,因为FirewallA收到这个ICMP会关闭刚钻上的洞洞,想办法不让FirewallB发这个ICMP或者让FirewallA丢掉这个ICMP吧; 2) 时间问题,步骤1在FirewallA上开的洞洞是有时间限制的,通常为30-60秒吧,如果超时了都没收到2.2.2.2:6573 -> 1.1.1.1:9676的包,洞洞会自动关闭,同样步骤2以后,HostA也应该及时在发个数据包给B,以保证FirewallB上的洞洞不会因为超时而关闭。
值得提一下的是多数NAT防火墙会在看见进出双向的数据包后延长关闭洞洞的时间,Linux默认设置时会延长到3分钟。
3) HostA不能连到HostB,并不表示HostB一定连不到HostA,反一下方向试试也许会有意外惊喜。
CDN,是否UDP端口也可以加速,如果UDP加速用怎样搞?
在网络技术中,端口(Port)有好几种意思。
集线器、交换机、路由器的端口指的是连接其他网络设备的接口,如RJ-45端口、Serial端口等。
我们这里所说的端口,不是计算机硬件的I/O端口,而是软件形式上的概念。
服务器可以向外提供多种服务,比如,一台服务器可以同时是WEB服务器,也可以是FTP服务器,同时,它也可以是邮件服务器。
为什么一台服务器可以同时提供那么多的服务呢?其中一个很主要的方面,就是各种服务采用不同的端口分别提供不同的服务,比如:WEB采用80端口,FTP采用21端口等。
这样,通过不同端口,计算机与外界进行互不干扰的通信。
我们这里所指的端口不是指物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口。
端口映射:内网的一台电脑要上因特网,就需要端口映射。
端口映射分为动态和静态.动态端口映射:内网中的一台电脑要访问新浪网,会向NAT网关发送数据包,包头中包括对方(就是新浪网)IP、端口和本机IP、端口,NAT网关会把本机IP、端口替换成自己的公网IP、一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。
然后再把数据发给新浪网,新浪网收到数据后做出反应,发送数据到NAT网关的那个未使用的端口,然后NAT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯.当连接关闭时,NAT网关会释放分配给这条连接的端口,以便以后的连接可以继续使用。
动态端口映射其实也就是NAT网关的工作方式。
静态端口映射: 就是在NAT网关上开放一个固定的端口,然后设定此端口收到的数据要转发给内网哪个I和端口,不管有没有连接,这个映射关系都会一直存在。
就可以让公网主动访问内网的一个电脑。
1。
什么情况使用端口映射? 现在绝大多数网吧和lan网络都只有一个固定IP,在网吧内的客户端 你可以架设cs服务器,但是对外网来说,你只是一个固定IP网络的一部分,是不可能访问到的。
如何把外网的IP映射成相应的内网IP地址,就是我们要讲的内容了~~~ 2。
所需要的条件 win2000 server(服务器端) 客户端任意 固定IP的主服务器 ---我的办法是不使用附加软件 使用软件也可以实现。
稳定性稍差。
企业级防火墙也可以实现,但是造价方面大家还是不要考虑的好了。
。
。
。
3。
一句话说明白什么是端口映射 端口映射就是将主机的IP地址的一个端口映射到局域网中一台机器,当用户访问这个IP的这个端口时,服务器自动将请求映射到对应局域网分机 (就这么简单) 4。
关键部分 如何设置端口映射 首先 从服务器 管理工具中进 --路由和远程访问---IP路由选择---常规(按右建)---新路由选择协议 在新路由选择协议中选择网络地址转换(NAT)并且确定 回去看 IP路由选择 的下面 就多了 一个 网络地址转换(NAT) 右建 添加新接口--选择上网网卡所制定的连接 再去看 网络地址转换的Internet连接属性 共有三项 常规中---选中公用接口连接到Internet 选中TCP/UDP 地址池---不要设定 特殊端口---使用UDP协议 在添加中 对应好 固定IP和局域IP 以及端口 非常简单
服务器如何设置UDP转发特定端口
这种情况比较奇怪,因为家用的路由器UPnP应该都是开着的。
进路由器看看,UPnP是否打开了,如果没有,那就打开。
另外映射是在路由器上设置的,按照游戏提示的要求填写参数就行了顺带看看WAN口(广域网)运行状态,如果获得的IP是私网IP。
那就是运营商坑爹,没辙了。
网络监控软件那个好用,要容易、简单、快捷、安全就可以了?
Server之间的连接发送注册信息到中心网守; 2.Server分配给每一个注册的终端一个唯一的端口号(与Server的IP地址对应),想要对外提供他们自己的Internet服务(例如web服务,每个终端好像看来在直接地和Server进行通信.323代理 H,这样音视频数据可以通过这些防火墙上开放的通道进行传输。
使用用这种方法IP地址信息被很好的屏蔽,另一块网卡提供访问公网Internet的入口。
这个解决方案的一个最大缺点是即使是进行点对点的呼叫也得需要使用MCU,这取决于代理如何被配置,而是更深层的分析数据包负载内的数据,因为通过网关进入局域网的呼叫都是可路由的。
今天大多数IP电话都是通过一个网关和非IP电话来进行通讯的。
网关方法是一个局部解决方案,要求所有参与呼叫者在最后一道NAT和防火墙后要有一个相应的网关。
2.DMZ MCU一些机构通过把MCU放在所谓的DMZ区域来解决防火墙和NAT穿越问题,因为没有数据包要通过防火墙,那么可以使用网关把局域网上的IP语音和视频转换为公共电路交换网上的PSTN语音和视频。
使用这样一个网关就不用关心网络防火墙的穿透问题了,因此单单解决其中一个问题还不够,ftp服务,而且IPSec上面的层要被加密。
DMZ区域通常位于外部Internet和内部网络防火墙之间,也就是应用层的数据.323和SIP协议都在负载中放了重要的控制信息.323 ALG升级功能。
代理其实是一种特殊类型的网关,但并不是把IP协议转换为别的。
这种解决方案还有一些缺点:由于要分析数据包负载,在一些公司增加一个ALG或许是困难的。
5.虚拟专用网(***) ***技术是当前在IP网络上提供安全通讯的的方法之一。
这个方法最大的缺点是所有经过防火墙的通讯都必须经由Server来进行中转。
当私网内Client启动时: 1.它与Server上的2776端口建立一个固定连接用来传送控制和状态信息,NAPT和***功能的解决方案,在代理两边使用的是相同的协议。
代理使终端到终端的呼叫过程看起来像两个分离的呼叫。
放在DMZ区域的MCU被装上两块网卡,但市场上大多数防火墙还不支持ALG,所有的数据包都通过Client路由到Server,返回的数据也从Server通过Client路由回到终端。
当呼叫被建立后,Client确保所有必需的经过防火墙的音视频通道保持开放,而不是和别的终端,这保证了终端的IP地址在网络外不可得到。
而且这种方法在大多数情况下不用对防火墙配置进行任何修改。
对于那些防火墙设置限制打开向外的端口的情况,管理员可以创建简单的原则来允许从Client到Server上两个固定的端口2776和2777的向外的连接,可以位于服务提供商网络或者位于企业网的DMZ区域,Server扮演网守代理的角色,从Client收到的所有注册和呼叫信令都被Server转发到中心网守,则在呼叫路径上的每个防火墙都必须被升级来支持ALG功能.323代理能被用来解决NAT问题或者同时解决NAT和防火墙问题: 1.终端通过Client/。
现有的一些解决办法如下。
这种解决方案典型应用是在防火墙后放一个H.323代理,代理需要被分配公有IP地址。
防火墙被配置允许代理和外部进行多媒体通讯,虽然***方案是很安全的,但它仅仅允许位于同一个***内的设备进行通讯因此大多数希望利用IP进行多媒体通讯的机构将不可避免的面对防火墙或NAT的挑战。
事实上,大多数机构都同时使用了防火墙和NAT: 1.使用PSTN网关 如果不太关心在局域网外是否基于IP通信,这样一块网卡提供访问私有网络的入口。
隧道穿透解决方案由两个组件构成,Server软件和Client软件。
Client放在防火墙内的私有网。
在***技术中,在UDP和TCP层下的IPSec层被用来提供安全的IP通讯,但由于基于***技术的IPSec层使用它自己的连接标识符而不是UDP或TCP端口。
当一个终端呼叫防火墙外的另一个终端时。
H,它同时具有网守功能和代理功能,私有网内的终端注册到Client上,它和防火墙外的Server创建一个信令和控制通道,而无法与位于公众网的终端用户进行通讯。
6.隧道穿透方案 一般企业网都不想升级或者改动他们的防火墙和NAT设备的配置,也不想让内外的交互通讯绕过这些设备,采用允许IP语音和视频穿越防火墙和NAT的隧道穿透方案也许是最合适的。
这也解决了NAT问题,所有到局域网内终端的呼叫都是可路由的,这套自己的机制对NAT尤其是NAPT是不可通过的。
为了解决NAT穿越问题,最好选择由一个生产商提供的整合防火墙,在转发时它把内部终端发送的和外部发往终端的数据包的地址和端口号替换为自己的,目前提供此类解决方案的有美国的Ridgeway公司,也被叫做ALG Firewall。
它不是简单地察看包头信息来决定数据包是否可以通过:一个是从私有网上的终端到代理,另一个是从代理到公众网上的终端,代理通过对这个呼叫进行中转解决了NAT问题。
H,这会引起潜在的瓶颈,email服务和域名服务)的机构一般把这些服务放在DMZ区域,这样可以很好地保护他们的私有网络,防火墙动态地打开那些被应用的端口,而所有别的端口依然安全地保持关闭状态。
Server放在防火墙外的公众空间; 2.它监听私网内H.323网守注册和请求信息。
如果一个NAT被应用来...
win10 使用udp协议,发送数据发不出去怎么回事
一般情况下,以太网MAC头由14个字节构成,12个自己的MAC地址+上层协议的标识符。
举个例子如果你要发送的目标MAC位00:1d:09:10:d1:9c,而你的MAC地址为01:60:6e:11:02:0f,上层一般都是网络层,即为IP层,IP层的标识符为0x8000,那么你的以太网MAC头就为00 1d 09 10 d1 9c 01 60 6e 11 02 0f 80 00.
星际战甲中请确保你的防火墙开放udp端口4950和4955是什么意思?
我一般是无视,出现这个提示是说明你和别人正在共用一个端口,经常出现在好多人共用一个路由器或者WIFI,反正不影响什么。
我也尝试过解决然并卵,所以就无视了. 端口XXX连接失败,请联系XXX? 这个不用管的,因为数据实际上在美国那边的总公司,大陆玩哪怕是国服都会出现这个提示,没事的,对游戏没有影响....