网络编程(part7)--网络主机/IP地址/域名/端口号

Posted GoatGui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络编程(part7)--网络主机/IP地址/域名/端口号相关的知识,希望对你有一定的参考价值。

鄙人学习笔记



文章目录





网络主机(host)

功能

标识一台主机在网络中的位置(地址)

地址

本地地址 : ‘localhost’/ ‘127.0.0.1’
网络地址 : ‘172.40.91.185’(例子)
自动获取(合适的)的地址: ‘0.0.0.0’

①若一台主机A的一个程序1使用本地地址: localhost’或者 ‘127.0.0.1’,则主机B中的任何一个程序都不能访问主机A中的程序1.它往往用于,自己写了个程序,但不想被别的主机访问。只想在自己主机里的几个个程序相互之间访问。比如,主机A中的程序2可以通过’127.0.0.1’对程序1进行访问。

②若我们想要其他主机上的程序访问我们主机上的程序,则我们可以用网络地址。比如,主机A上的程序1若使用网络地址’172.40.91.185’,则主机B上的程序a,可以通过’172.40.91.185’对主机A上的程序1进行访问。

③若有主机A的程序1绑定的地址是’0.0.0.0’,那么其他主机同样能用相对应的网络地址,比如’172.40.91.185’进行访问。主机A内的其他程序则可通过’127.0.0.1’进行访问。自动获取的地址兼容了本地地址和网络地址的作用。

查看本机网络地址命令

Linux内查看本机网络地址的命令为:ifconfig

举个例子

网络编程(part7)--网络主机/IP地址/域名/端口号_网络主机

172.40.91.188就是我们主机的网络地址
网络编程(part7)--网络主机/IP地址/域名/端口号_网络主机_02

127.0.0.1就是我们的本地地址

IP地址

功能

确定一台主机的网络路由位置

结构

IPv4:点分十进制表示。比如:172.40.91.185,有4个部分,每部分取值范围0—255,十进制转换为2进制则每个部分占8位,4个部分,一共有32位,则可以有2^32个不同的地址。
IPv6:128位 扩大了地址范围,可以有2^128个不同的地址

特殊IP

127.0.0.1 本机测试IP
0.0.0.0 自动获取本机网卡地址
172.40.91.0 通常表示一个网段
172.40.91.1 通常表示一个网关
172.40.91.255 用作广播地址

备注1:若一堆主机的IP地址,都是由同一个IP地址分配的,那么这一堆主机就在同一个局域网段。注意,同一个局域网内的IP地址的前两个部分是相同的。局域网传输的速度很快,因为,在传输的过程中经过的节点少。

备注2:如果有两个房间(房间A和房间B),房间A内所有主机的地址都是由交换机A分配的。若房间B的某台主机想给房间A的某台主机传输信息,则必须先找到房间A的交换机A。要找到交换机A,就要找到交换机A的地址,则交换机A的地址就叫做网关地址

备注3:每个网络的最大地址为发送广播的地址(即广播地址),向该地址发送信息,则网段内所有主机都能接收到。

域名

定义

给网络服务器地址起的名字。比如www.baidu.com,当我们在访问这个地址时,实际上是在访问百度的一台主机, 且这台主机相当厉害,因为它是也一台服务器。
域名也是一台主机服务器IP地址的别称。我们可以试着用IP地址访问百度.

备注:如果我们通过百度搜索知乎,这时,就是走了百度的流量。如果我们想在天猫上买衣服,我们通过百度搜索天猫,当搜索完成,点击进入了天猫的网站,天猫就需要给百度money. 所以一般网站都希望用户记住他们的IP地址/域名,而不通过百度/搜狗之类的搜索引擎查找,但我TM压根记不住好么~所以就可以将网站收藏起来,下次就可以不通过中间商(百度)直接访问。

作用

方便记忆,表达一定的含义

ping

若想测试和某个主机是否联通,就可以ping一下。

举个例子

(1)与百度ping一下:
网络编程(part7)--网络主机/IP地址/域名/端口号_域名_03

这表示,该同志能够与百度的主机联通。

(2)与局域网内的另一台主机ping一下:
网络编程(part7)--网络主机/IP地址/域名/端口号_网络主机_04

这表示,该同志能够与局域网内的另一台主机联通。

端口号(port)

作用

端口是网络地址的一部分,用于区分主机上不同的网络应用程序。

比如:我们发一条微信,对方手机上必然是微信接收到的消息。这时为啥呢?为啥不是支付宝、TIM接收的消息呢?因为有端口号!也就是说,我的消息发给对方会自动标记一个端口,只有在对方手机上监听这个端口的应用,才能收到我发送的这条消息。

特点

一个系统中的网络应用程序监听端口不能重复。

取值范围:1 – 65535

①1—1023:系统应用或者大众程序监听端口(我们一般不会使用)
②1024—65535:自用端口(最好用10000+)

以上是关于网络编程(part7)--网络主机/IP地址/域名/端口号的主要内容,如果未能解决你的问题,请参考以下文章

linux c 网络编程:用域名获取IP地址或者用IP获取域名 网络地址转换成整型 主机字符顺序与网络字节顺序的转换

简述IP地址、域名、URL地址的结构及其相互关系

主机定位与网络诊断

域名和网络地址结构体---struct hostent

认识IP地址

计算机网络 域名