Udp OpenSSL DTLSv1_侦听:服务器无法从客户端获取消息

Udp OpenSSL DTLSv1_侦听:服务器无法从客户端获取消息,udp,openssl,listen,Udp,Openssl,Listen,我有个大问题!我需要你的帮助!请帮帮我 我在Internet上找到了一个DTLS实现的示例,它被称为DTLS\u udp\u echo.c。 我在函数中有以下描述服务器行为的代码: 其中: 127.0.0.1 port 8001 - client 127.0.0.1 port 8000 - server 但服务器似乎是盲的,它并没有向客户端发送握手。 我相信地址是正确的,因为当我在实验中更改地址时,客户端无法向服务器发送握手,出现了一个错误: SSL_connect: Connection

我有个大问题!我需要你的帮助!请帮帮我

我在Internet上找到了一个DTLS实现的示例,它被称为
DTLS\u udp\u echo.c
。 我在函数中有以下描述服务器行为的代码:

其中:

127.0.0.1 port 8001 - client
127.0.0.1 port 8000 - server 
但服务器似乎是盲的,它并没有向客户端发送握手。 我相信地址是正确的,因为当我在实验中更改地址时,客户端无法向服务器发送握手,出现了一个错误:

SSL_connect: Connection refused
error:00000000:lib(0):func(0):reason(0)
我的openSSL版本是1.0.0d


谢谢你,朋友,你试着帮助我

很难说清楚你的问题是什么,但有几个想法可能会帮助你寻找答案

设置消息和信息回调、信息cb和消息cb是您必须提供的功能:

SSL_set_info_callback(ssl, info_cb);
SSL_set_msg_callback(ssl, msg_cb);
DTLSv1\u侦听是否会返回?在这种情况下,它会返回什么

你也可以打电话

SSL_state_string_long(ssl)
返回ssl当前状态的描述

如果您使用的是Windows,那么您提到的示例将不起作用,因为Windows不会像示例所预期的那样处理绑定到同一地址和端口的多个UDP套接字。要解决这个问题,请参阅

SSL_set_info_callback(ssl, info_cb);
SSL_set_msg_callback(ssl, msg_cb);
SSL_state_string_long(ssl)