标签:
英特网目前有两种地址格式:1、IPv4(32位地址格式)2、IPv6(128位地址格式)。IPv4的命名空间为PF_INET,IPv6的命名空间则为PF_INET6。
#incldue <sys/socket.h> int PF_INET int PF_INET6
Internet 命名空间下的socket地址有以下两个组件:
1、想连接的机器的地址:有几种表示方式,1、Internet Address Formats;2、Host Addresses;3、Host Names
2、端口号
地址和端口号都要遵循一个叫网络字节顺序的标准格式。
Internet Socket Address Formats:
#include <netinet/in.h> struct sockaddr_in { sa_family_t sin_family,//指明了使用的socket地址的地址族。在Internet中为AF_INET struct in_addr sin_addr,//主机的地址(IP地址,或者主机名) unsigned short int sin_port//端口好 } struct sockaddr_in6 { sa_family_t sin6_family, struct in6_addr sin6_addr, unint32_t sin6_flowinfo, //未实现部分。。。。。。 unit16_t sin6_port, }
Host addresses和host name:
主机地址指的就是平常所说的ip地址,比如IPv4地址128.52.46.32。IPv6地址5f03:1200:836f:c100::1。
每台计算机都可以有一个或多个主机名,比如:www.gnu.org。
标签:
原文地址:http://www.cnblogs.com/san-fu-su/p/5751533.html