zl程序教程

您现在的位置是:首页 >  后端

当前栏目

网络层 IP 首部中的目的 IP 地址是怎么获取的?

地址IP 获取 怎么 目的 网络层 首部
2023-09-11 14:19:00 时间

TCP 首部格式如下:
image
可以看到 TCP 首部里面是没有 IP 地址相关的字段的。那么当数据包经过网络层的时候,网络层加一个 IP 首部,这个首部中的 IP 地址是从哪来的呢?

答案:
通过 http://www.baidu.com 访问一个域名时,首先通过 DNS 获取到 IP ,之后就可以把 HTTP 的传输工作交给操作系统中的协议栈。应用程序(浏览器)通过调用 Socket 库,来委托协议栈工作。Socket 中会用到这个 IP 来与服务器建立 TCP 连接(因为建立连接,肯定得知道服务器的位置)。
网络层中的 IP 可以通过socket中获得。具体的细节请移步看这篇:TCP Socket 编程原理详解 - 拾月凄辰 - 博客园 (cnblogs.com)

image

image

参考文章:《图解网络v3.0》-小林coding