标签: udp

UDP 和 NAT - 超时是双向的吗?

每次客户端发送或接收数据包时,UDP 连接是否通过 NAT 重置超时,或者是否有任何(常见)实现要求客户端主动发送某些内容以保持连接活动?

我正在开发一个 UDP 流应用程序,我想知道如果没有有效负载数据,除了服务器已经发送的心跳之外,我是否还必须让客户端发送一个定期心跳。

nat udp

2
推荐指数
1
解决办法
3438
查看次数

Gcloud负载均衡器后面的UDP服务器:接收正常,回复失败

我在 Google Cloud 网络负载均衡器后面(在虚拟机上)设置了 UDP 服务器。服务器绑定到0.0.0.0. UDP 服务器可以接收发送到平衡器的消息,但回复不会返回到客户端。没有报告任何错误,并且tcpdump没有显示任何异常情况。我已确保所有防火墙规则都允许此流量,并且负载均衡器设置为转发所有端口。

我绝不是网络专家,但我怀疑UDP 服务器出了问题,因为接收消息的地址与用于回复的地址不同 ( sendto())。

socketserver我正在使用标准库中的 Python 模块作为回显服务器来测试所有这些:

import SocketServer

class MyUDPHandler(SocketServer.BaseRequestHandler):
    def handle(self):
        data = self.request[0].strip()
        socket = self.request[1]
        print "{} wrote:".format(self.client_address[0])
        print data
        socket.sendto(data.upper(), self.client_address)

if __name__ == "__main__":
    HOST, PORT = "0.0.0.0", 5029
    server = SocketServer.UDPServer((HOST, PORT), MyUDPHandler)
    server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

虚拟机只有一个网络接口,具有本地IP 10.240.x.x。如果我将 UDPServer 绑定到该本地 IP,则该服务器甚至不会接收消息。

如果没有负载均衡器,一切都会正常工作,即消息会正确回显给客户端。

问题:我应该怎样做才能让我的 UDP 服务器回复消息?

编辑: 这个讨论可能是相关的。

networking load-balancing udp google-cloud-platform google-cloud-network-load-balancer

2
推荐指数
1
解决办法
867
查看次数

OpenVPN 服务器丢包

我有一个带有Debian 8和的 OpenVPN 服务器OpenVPN 2.3.14 x86_64-pc-linux-gnu。今天我发现丢包了。我的服务器位于 TCP 端口 443 上。

Ping statistics for 144.76.41.103:
    Packets: Sent = 1135, Received = 1121, Lost = 14 (1% loss),
Approximate round trip times in milli-seconds:
    Minimum = 29ms, Maximum = 961ms, Average = 51ms
Run Code Online (Sandbox Code Playgroud)

其他统计:

Ping statistics for 144.76.41.103:
    Packets: Sent = 1135, Received = 1121, Lost = 70 (5% loss),
Approximate round trip times in milli-seconds:
    Minimum = 29ms, Maximum = 961ms, Average = 51ms
Run Code Online (Sandbox Code Playgroud)

服务器配置:

port 443 …
Run Code Online (Sandbox Code Playgroud)

networking debian openvpn tcp udp

2
推荐指数
1
解决办法
1万
查看次数

为什么我的计算机向网关发出无法到达的 ICMP 请求?

在使用wireshark上的ICMP过滤器后,我注意到我的机器定期向路由器发出ICMP请求,但总是失败:

在此输入图像描述

我注意到随后失败的 ICMP 请求在端口 53 上使用 UDP。有人可以解释一下我正在查看的内容吗?

在此输入图像描述

tcp udp wireshark ipv4

2
推荐指数
1
解决办法
6119
查看次数

仅通过 TCP 的 DNS SERVFAIL 和错误标志:损坏的 DNS 服务器?

在指向另一个域的 CNAME 查找的附加部分中返回根名称服务器是否配置不佳?特别是我看到的一个是由 Network Solutions 托管的 CNAME,CNAME 指向不同的域和 TLD。

我问这是否是糟糕的配置,因为所有这些额外的记录都会导致超过 UDP 数据包的大小,从而迫使使用 TCP 重新完成查询。

dig www.unitedstatesartists.org +trace

名称服务器响应:

example.org. 86400  IN      NS      ns15.worldnic.com.
example.org. 86400  IN      NS      ns16.worldnic.com.
;; Received 95 bytes from 199.249.120.1#53(b2.org.afilias-nst.org) in 79 ms

;; Warning: Message parser reports malformed message packet.
;; Truncated, retrying in TCP mode.
www.example.org. 7200 IN    CNAME   load-01-123.us-west-1.elb.amazonaws.com.
.  518400  IN      NS      a.root-servers.net.
.  518400  IN      NS      b.root-servers.net.
.  518400  IN      NS      c.root-servers.net.
.  518400  IN      NS      d.root-servers.net.
.  518400  IN      NS …
Run Code Online (Sandbox Code Playgroud)

domain-name-system root tcp udp zones

1
推荐指数
1
解决办法
1万
查看次数

vpn 连接上的 UDP over TCP

例如,我们有一个通过代理的 VPN TCP 传输连接。我想知道如何通过此 TCP 连接模拟 UDP?如何模仿其不可靠的性质?

vpn tcp udp

1
推荐指数
1
解决办法
4250
查看次数

(简单)UDP 协议 - 网络

我知道 UDP 是一种不可靠的协议,它可能会无序到达、无法完全到达等。

我还知道,当将 UDP 用于 traceroute 之类的东西时,到达路由器的 TTL=1 的数据包和到达目的地为非开放端口的终端主机的数据包会生成 ICMP 错误消息,这些消息会传输回发送方。

我的问题是 - 发件人是否有办法知道标准数据包是否被丢弃?我知道该协议是不可靠的,但是接收方在 UDP 协议中发回的任何类型的“确认”是否允许发送方知道丢弃的数据包?

这是基本 UDP 的一个直接协议问题,我不想知道我“能做什么”。我现在已经通读了一些东西,虽然我基本上 100% 确定答案是否定的,但你看不出来,我读了一些让我对此感到不安的东西。

networking udp network-protocols

1
推荐指数
1
解决办法
412
查看次数

如何使用 iperf3 设置 UDP 数据包大小?

如何使用 iperf3 设置 UDP 数据包大小?标志“-M”不适用于 iperf3。有替代方案吗?

iperf udp packets

1
推荐指数
1
解决办法
2万
查看次数

为什么udp的吞吐量比tcp低?

我正在通过 iperf3 测量 tcp 和 udp 吞吐量。我在虚拟机中运行 iperf3,一台作为服务器,另一台作为客户端。VM 通过 10 Gbps 链路进行连接。结果表明tcp比udp获得更高的吞吐量。然而,正如我们所知,TCP 运行更多的算法和计算,并且还具有三向握手,那么为什么 udp 吞吐量小于 tcp?这与 tcp 和 udp 的缓冲区大小有关吗?下面是 tcp 和 udp 测量的结果。很明显,iperf 在特定时间内为 tcp 发送的数据比 udp 发送的数据多,但为什么呢?

TCP:8.88 Gbps

[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  4]   0.00-1.00   sec   922 MBytes  7.73 Gbits/sec    1   3.04 MBytes       
[  4]   1.00-2.00   sec  1.04 GBytes  8.92 Gbits/sec    0   3.04 MBytes       
[  4]   2.00-3.00   sec  1.07 GBytes  9.15 Gbits/sec    0   3.04 MBytes       
[  4]   3.00-4.00   sec  1.05 GBytes  8.99 Gbits/sec    0 …
Run Code Online (Sandbox Code Playgroud)

performance iperf tcp udp

1
推荐指数
1
解决办法
4329
查看次数

阻止所有 UDP 流量(以防止 ddos​​)

在过去的几周里,我收到了无数次 ddos​​ 攻击。刚才我在运行iptraf的时候抓到了一个。通常,我服务器上使用的 99.9% 的数据包是 TCP 数据包,而不是 UDP。我看到使用了一些,但通常几乎没有。

现在,当攻击发生时,我注意到每秒有数千个传入的 UDP 数据包。tcpdump 也显示了这个:http : //pastebin.com/raw.php?i=QaybC8C1

我运行 CENTOS 5.6,我只将它用于 nginx (80,443)、ssh (22)、ftp (21)。我不运行名称服务器、电子邮件或类似的东西。

我的问题是。我可以通过 iptables 阻止所有传入的 UDP 流量吗?这对 UDP ddos​​ 攻击有效吗?如果我可以阻止所有 UDP 流量,这会在 linux 中导致任何问题吗?

centos udp ddos

0
推荐指数
2
解决办法
2万
查看次数