本地网络外部的UDP“发送”

安东·克里斯滕森(Anton Christensen)

嗨,我最近开始对UDP套接字进行编程,并且我一直在将它们用于本地网络上的所有内容。但是我似乎找不到关于如何在可爱的防火墙之外发送UDP数据包的任何信息。

这是我用于绑定UDP套接字的代码

int handle = socket( AF_INET, SOCK_DGRAM, IPPROTO_UDP );
sockaddr_in address;
address.sin_family = AF_INET;
address.sin_addr.s_addr = INADDR_ANY;
address.sin_port = htons( (unsigned short) /* port */);
bind( handle, (const sockaddr*) &address, sizeof(sockaddr_in) )

这是我用来发送数据包的代码

sockaddr_in address;
address.sin_family = AF_INET;
address.sin_addr.s_addr = htonl( /*local network IP Address*/ );
address.sin_port = htons( (unsigned short) /* port */ );

sendto( handle, (const char*)/* packet data */, size, 0, (sockaddr*)&address, sizeof(sockaddr_in) );

最后是我用来接收数据包的代码

sockaddr_in from;
socklen_t fromLength = sizeof( from );

int received_bytes = recvfrom( handle, (char*)data, size, 0, (sockaddr*)&from, &fromLength );
母马

好吧,由于UDP是一种发送数据的“未连接”方式,因此您必须将规则添加到路由器的防火墙中,以便它将端口路由到(应该接收数据的计算机)。

问题不在于代码,而在于网络基础架构。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将 udp 数据包从 html 发送到本地网络

来自分类Dev

如何从coap服务器向本地网络外部运行的设备发送GET请求?

来自分类Dev

sshd,本地网络密码,外部接口密钥

来自分类Dev

在本地网络中推送通知

来自分类Dev

PHP XAMPP本地网络问题

来自分类Dev

Phillips hue本地网络

来自分类Dev

Apache:本地网络上的Wordpress

来自分类Dev

带有本地网络的webRTC

来自分类Dev

iOS:访问本地网络

来自分类Dev

JS本地网络通讯

来自分类Dev

通过本地网络托管HTTPS

来自分类Dev

iOS:访问本地网络

来自分类Dev

仅本地网络流量

来自分类Dev

从本地网络到达lxd容器

来自分类Dev

复制在本地网络中挂起

来自分类Dev

Phillips hue本地网络

来自分类Dev

本地网络上的NTP

来自分类Dev

我无法退出本地网络

来自分类Dev

检测鱿鱼代理本地网络

来自分类Dev

从本地网络访问VirtualHost

来自分类Dev

共享本地网络Docker

来自分类Dev

无法从本地网络浏览 WAMP

来自分类Dev

无法使用外部IP /域从本地网络访问本地Web服务器

来自分类Dev

如何在同一本地网络的电话之间发送通知?

来自分类Dev

从Windows将键盘输入发送到本地网络上的Ubuntu

来自分类Dev

Raspberry + socket.io可在本地网络上运行,但不能从外部运行

来自分类Dev

无法访问本地网络外部/内部的Apache Web服务器

来自分类Dev

apache2不响应来自本地网络外部的请求

来自分类Dev

如何使Web服务器响应本地网络外部的请求?