关于INADDR_ANY

是用于多IP机器上  
   
  比如你的机器有三个ip  
  192.168.1.1  
  202.202.202.202  
  61.1.2.3  
   
  如果你serv.sin_addr.s_addr=inet_addr("192.168.1.1");  
   
  然后监听100端口  
   
  这时其他机器只有connect   192.168.1.1:100才能成功。  
  connect   202.202.202.202:100和connect   61.1.2.3:100都会失败。  
   
  如果serv.sin_addr.s_addr=htonl(INADDR_ANY);   的话,无论连接哪个ip都可以连上的。

时间: 2024-10-06 01:15:02

关于INADDR_ANY的相关文章

linux网络编程中INADDR_ANY的使用

网络编程中常用到bind函数,需要绑定IP地址,这时可以设置INADDR_ANY INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”.“任意地址”. 也就是表示本机的所有IP,因为有些机子不止一块网卡,多网卡的情况下,这个就表示所有网卡ip地址的意思. 比如一台电脑有3块网卡,分别连接三个网络,那么这台电脑就有3个ip地址了,如果某个应用程序需要监听某 个端口,那他要监听哪个网卡地址的端口呢?如果绑定某个具体的ip地址,你只能监听你所设置的ip地

关于socket绑定INADDR_ANY

其中INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或"所有地址"."任意地址". 一般情况下,如果你要建立网络服务器,则你要通知服务器操作系统:请在某地址 xxx.xxx.xxx.xxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发送给我.这个过程,你是通过bind()系统调用完成的.--也就是说,你的程序要绑定服务器的某地址,或者说:把服务器的某地址上的某端口占为已用.服务器操作系统可以给你这个指定的地址,也可以不给

linux网络编程中INADDR_ANY的含义

INADDR_ANY选项 网络编程中常用到bind函数,需要绑定IP地址,这时可以设置INADDR_ANY INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”.“任意地址”. 也就是表示本机的所有IP,因为有些机子不止一块网卡,多网卡的情况下,这个就表示所有网卡ip地址的意思. 比如一台电脑有3块网卡,分别连接三个网络,那么这台电脑就有3个ip地址了,如果某个应用程序需要监听某 个端口,那他要监听哪个网卡地址的端口呢?如果绑定某个具体的ip地址,

TCP网络程序设计

11.7 创建套接字 11.7.1 函数名 socket 11.7.2 函数原形 int socket(int domain, int type, int protocol); 11.7.3 函数功能 用于创建套接字 11.7.4 所属头文件 #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> 11.7.5 返回值 成功:返回文件fd 失败:-1 11.7.6 参数说明 domain:通信域 AF_INET,

Winsock 入门 Echo 示例

1 #include <stdio.h> 2 #include <winsock2.h> 3 4 #pragma comment(lib, "ws2_32") /* WinSock 使用的库函数 */ 5 6 #define ECHO_DEF_PORT 7 /* 侦听的缺省端口 */ 7 #define ECHO_BUF_SIZE 256 /* 缓冲区的大小 */ 8 9 int main(int argc, char **argv) 10 { 11 WSADA

select 函数1

Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect.accept.recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回).可是使用Select就可以完成非阻塞(所谓非阻塞方式non-block,就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,以返回值的不

TCP之Delay ACK在Linux和Windows上实现的异同-Linux的自适应ACK

关于TCP Delay ACK的概念我就不多说了,到处复制粘贴标准文献以及别人的文章只能让本文篇幅加长而降低被阅读完的欲望,再者这也不是什么论文,附录参考文献几乎很少有人去看,所以我把这些都略过了. 和风吹的干皮鞋,吹的断愁绪吗? 写完本文后的补充: 这段话是我写完本文后补上去的.本来我想把这篇文章控制在2000字以内,或者更少的,800-1000字以内,无奈还是说多了...今天心情非常好,因为我竟然在梦里把三亨利之战的细节搞清楚了,迄今,我觉得自己对于西洋史的认知更近了一步,可以说今天是一个里

自写聊天室_LinuxC实现(4)——项目文档

西邮Linux兴趣小组  暑期项目 项目名称:    happychat        项目作者:      楚东方     1. 引言 1.1 项目综述 对项目进行简要介绍,并说明编写此项目的目的. 该项目为聊天室,主要为了实现聊天,文件传输,方便linux环境下的,交流与聊天. 实现功能: 1.好友管理: (1)添加好友 (2)删除好友 2.群管理 (1)创建群 (2)加群 (3)退群 (4)解散群 3.文件传送 实现了上传和下载的断点续传 4.聊天界面分屏 利用光标的移动对输入和屏幕聊天记

IOS上的socket通信

客户端:导入头文件:#import <sys/socket.h>#import <netinet/in.h>#import <arpa/inet.h>#import <unistd.h> 1. 创建连接CFSocketContext sockContext = {0, // 结构体的版本,必须为0self,  // 一个任意指针的数据,可以用在创建时CFSocket对象相关联.这个指针被传递给所有的上下文中定义的回调.NULL, // 一个定义在上面指针中的