我是刚接触SOCKET的,有很多东西不懂,想请教各位。
1。
    我做一个用UDP广播的程序。在Client端广播,Srv端接收,我想在Srv里找到Client的IP,
CSocket m_ReceiveSocket;   
 
...m_ReceiveSocket.Create(3550,SOCK_DGRAM);
m_ReceiveSocket.Receive(buff1,256);     
struct sockaddr_in sa;
int addr_length=sizeof(sa);
m_ReceiveSocket.GetPeerName((sockaddr*)&sa,&addr_length);
AfxMessageBox(inet_ntoa(sa.sin_addr));//这里显示Remote ip
但显示出来的都是204.204.204.204,请问,是不是我的方法错了,还是用UDP广播时,找不到源IP?
2。
    在客户端,我想用广播地址(主机号全为1的地址)做广播,到底是用sendto还是用send的方法?还有,按理,如果我广播地址填255.255.255.255这地址,不就是全网广播嘛,但为什么我用SENDTO的方法,这个地址不行,192.168.1.255却可以发送出去。这样的话,倒不是在不同的网段上还加用代码去分析网段的广播地址吗?
不解中?请求帮忙。