我希望能够仅从本地主机(来自127.0.0.1
和my_local_ip
)获取特定端口上的请求;
我尝试了以下方法:
int localhost = (127 << 24) + 1; // 127.0.0.1
sock_address.sin_addr.s_addr = htonl(localhost);
这让我只能连接127.0.0.1
而不是来自实际的本地 ip。我也试过:
char hostName[128] = "";
struct hostent *pHost = 0;
gethostname(hostName, sizeof(hostName));
pHost = gethostbyname(hostName);
memcpy(&sock_address.sin_addr, pHost->h_addr_list[0], pHost->h_length);
由于我无法连接127.0.0.1
,我能够连接到本地 ip,但远程请求也得到了答复
我究竟做错了什么?还有其他方法吗?
谢谢!