ACE udp绑定ip失败
Client ip: 192.168.6.1 和 192.168.6.2 (客户端2个ip,一个网卡)Server ip: 192.168.6.23
Client:
ACE_INET_Addr ace_addr("192.168.6.2");
ACE_SOCK_Dgram sock(ace_addr);
if (this->reader_.open (*this, sock.get_handle(), this->completion_key_) != 0 ||
this->writer_.open (*this, sock.get_handle(), this->completion_key_) != 0)
{
return -1;
}
当和服务端通信时,服务端确总是认为客户端 ip为192.168.6.1 端口地址呢?没有端口绑定在什么地方? ACE_INET_Addr类中有一个构造函数
explicit ACE_INET_Addr (const char address[],
int address_family = AF_UNSPEC);
没有关于端口的参数。
我现在用下面的构造函数,就OK了。也就是版主说的绑定IP和端口
/// Creates an ACE_INET_Addr from a sockaddr_in structure.
ACE_INET_Addr (const sockaddr_in *addr, int len);
页:
[1]