gethostname、gethostbyname】的更多相关文章

一.gethostname,gethostbyname的用法 这两个函数可以用来获取主机的信息.gethostname:获取主机的名字gethostbyname:通过名字获取其他的信息(比如ip) 1.gethostname:man手册里面的解释(部分):       #include <unistd.h>       int gethostname(char *name, size_t len);       int sethostname(const char *name, size_t…
gethostname():返回本地主机的标准主机名 原型: #include<unistd.h> int gethostname(char *name, size_t len); 参数说明: name:  接收缓冲区,字节长度必须为len,或更长,存获取主机名 len:      接收缓冲区name的最大长度 返回值: 如果函数成功,返回0,如果发生错误,返回-1,错误号存放在外部变量errno中. /* gethostname.c */ #include<stdio.h> #i…
int gethostname(char *name, size_t len);获取本地主机名存入name[len],成功返回0,失败返回-1: struct hostent * gethostbyname(const char * hostname);  //返回对应于给定主机名的包含主机名字和地址信息的hostent结构的指针 struct hostent { char *h_name;  //所查询主机规范名 char **h_aliases;  // int h_addrtype; in…
1. struct hostent结构体 struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; #define h_addr h_addr_list[0] }; h_name         地址的正式名称.  h_aliases       预备名称(别名)的指针.  h_addrtype    地址类型; 通常是AF_INET.   h_length…
一.在前面讲过的最简单的回射客户/服务器程序中,一个客户端即一个进程,只会发起一个连接,只要稍微修改一下就可以让一个客户端发起多个连 接,然后只利用其中一个连接发送数据. 先来认识一个函数getsockname #include <sys/socket.h>   int getsockname(int sockfd, struct sockaddr *addr, socklen_t *addrlen); 利用此函数可以得到某连接sockfd的地址信息,如ip地址和端口,这可以帮助我们判断发起了…
学习地址: C语言中文网 - 实现迭代服务端和客户端 GNU - Closing a Socket 前面介绍的程序,不管Service 端还是 Client端,都有一个问题,就是处理完一个 accept 请求立即退出,没有太大的实际意义.能不能像Web 服务器那样一直接收Client 端的请求呢?能,使用 While 循环即可. 修改前面的代码,是我们的服务端可以不断响应 Client 端的请求. 升级版Socket Demo 1. socket缓冲区 在迭代服务端和客户端的核心,就是如何使用w…
一般都熟悉sniffer这个工具,它可以捕捉流经本地网卡的所有数据包.抓取网络数据包进行分析有很多用处,如分析网络是否有网络病毒等异常数据,通信协议的分析(数据链路层协议.IP.UDP.TCP.甚至各种应用层协议),敏感数据的捕捉等.下面我们就来看看在windows下如何实现数据包的捕获. 下面先对网络嗅探器的原理做简单介绍. 嗅探器设计原理 嗅探器作为一种网络通讯程序,也是通过对网卡的编程来实现网络通讯的,对网卡的编程也是使用通常的套接字(socket)方式来进行.但是,通常的套接字程序只能响…
主要是两个函数的使用,gethostname();.gethostbyname(); 自定义两个函数GetLocalHostName获取计算机名.GetIPAddress获取IP地址 int CIPDlg::GetLocalHostName(CString &strHostName) { ]; int nRetCode; nRetCode = gethostname(szHostName, sizeof(szHostName)); ) { strHostName = _T("Not av…
以下是VC Socket初始化时用到的两个函数 一.WSAStartup函数                int WSAStartup                       (                          WORD wVersionRequested,                          LPWSADATA lpWSAData                         );使用Socket的程序在使用Socket之前必须调用WSAStartup函…
getifaddrs()和struct ifaddrs的使用,获取本机IP ifaddrs结构体定义如下: struct ifaddrs { struct ifaddrs *ifa_next; /* Next item in list */ char *ifa_name; /* Name of interface */ unsigned int ifa_flags; /* Flags from SIOCGIFFLAGS */ struct sockaddr *ifa_addr; /* Addre…