码迷,mamicode.com
首页 > 其他好文 > 详细

基础概念——理解IP地址

时间:2019-04-15 14:25:22      阅读:372      评论:0      收藏:0      [点我收藏+]

标签:strong   套接字   ddr   接口   阅读   符号   统一   就是   int   

从程序员角度,可以把因特网看做是世界范围内的主机集合:

1)主机集合被映射为一组32位的IP地址

2)这个IP地址被映射为一组称为因特网域名标识符

3)因特网主机上的进程能够通过连接和任何其他因特网主机上的进程通信。

 

IP地址

  IP地址是一个32位无符号整数

  存放在一个结构中;

struct in_addr {

  unsigned int s_addr;

} ;

为什么要用结构来存放标量IP地址?

  把一个标量存放在一个结构中,是套接字接口早期实现的不幸产物。为IP地址定义一个标量类型应该更有意义。但现在更改已经太迟了,因为有大量的应用是基于此的了。

因为因特网主机可以有不同的主机字节顺序,TCP/IP为任意整数数据项定义了统一的网络字节顺序,即大端字节顺序。

即使主机字节顺序是小端法。Unix提供了一些函数在网络和主机字节顺序之间实现转换。

 

32位也就是4个字节

IP地址通常是用点分十进制方式表示的;这种表示方式更方便人们阅读

每个字节由它的十进制数表示,并且用句点和其他字节分开。

例如:128.2.194.242就是地址0x8002c2f2的点分十进制表示。

在Linux上,能够使用HOSTNAME命令来确定你的主机的点分十进制地址。

 

因特网程序使用inet_aton和inet_ntoa 函数来实现IP地址的点分十进制串之间的转换。

基础概念——理解IP地址

标签:strong   套接字   ddr   接口   阅读   符号   统一   就是   int   

原文地址:https://www.cnblogs.com/grooovvve/p/10710320.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!