Windows下查看IP地址用ipconfig
Linux 下查看IP地址用ifconfig 还有 ip addr
而ipconfig 和ip addr的区别则是与net-tools工具和iproute2工具的“历史”有关,这常常是个考点,但内容较多。
···························可略过····················································
net-tools起源于BSD,自2001年起,Linux社区已经对其停止维护,而iproute2旨在取代net-tools,并提供了一些新功能。一些Linux发行版已经停止支持net-tools,只支持iproute2。
net-tools通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置,而iproute2则通过netlink套接字接口与内核通讯。
net-tools中工具的名字比较杂乱,而iproute2则相对整齐和直观,基本是ip命令加后面的子命令。
虽然取代意图很明显,但是这么多年过去了,net-tool依然还在被广泛使用
···························可略过····················································
IP地址是一个网卡在网络世界的通讯地址,相当于门牌号。
原来32位的IP被进行了A、B、C、D、E分类,但因为计算机数量已经远超出当初分类时的预计,现在用的是无类型域间选路(CIDR), 还有IPv6(用得较少)
将32位的IP地址一分为二,分为网络号和主机号。
10.100.122.2/24
斜杠后的24表示,32位中前24位是网络号,后8位是主机号。
CIDR还有两个特点一个是广播地址,另一个是子网掩码。
广播地址
10.100.122.255,如果发送给这个地址,所有的10.100.122网络里的机器都可以收到。
子网掩码
255.255.255.0,将子网掩码和IP地址按位进行AND计算,就会得到10.100.122,其实这就是网络号。
子网掩码 AND IP地址 = 网络号
共有地址和私有地址
虽然ABCDE的分类我们基本不用,但是其中的共有地址和私有地址我们还是会用的。
共有地址是运营商分配的,像收件地址一样不会重复,如google的IP一样,而私有网络就像小区的门牌号,你可以是A幢3单元,别人小区也可以是A幢3单元。例如数据中心里,办公司家里或学校的IP地址,一般都是私有地址,允许组织内部IT人员自己管理分配,而且可以重复(像不同小区可以重复门牌号)。192.168.0.X就是常用的私有地址。
举例
在Linux下输入ip addr会得到
root@test:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether fa:16:3e:c7:79:75 brd ff:ff:ff:ff:ff:ff
inet 10.100.122.2/24 brd 10.100.122.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::f816:3eff:fec7:7975/64 scope link
valid_lft forever preferred_lft forever
展示的是这台机器上所有的网卡信息。IP地址后面有个 scope,对于“eth0”网卡,global 表示它是可以连外网的,而brd 后的是表示广播地址;对于“lo”网卡来说,host 表示这张网卡仅仅可以供本机相互通信,lo全称是loopback,往往会被分配到127.0.01这个地址。
MAC地址
上面例子中 link/ether fa:16:3e:c7:79:75便表示的是MAC地址,是一个网卡的物理地址(出厂时设定,且唯一),用十六进制表示。
一个网络包从一个传到另一个地方,IP的作用就像收件地址可以定位到一个地方,而MAC就像身份证一样,可以定位到具体的人。
网络设备的状态标识
<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
BROADCAST表示这个网卡有广播地址,可以发送广播包;
MULTICAST表示网卡可以发送多播包;
LOWWER_UP表示L1是启动的,也就是网线插着嘞;
MTU是层MAC层的钙尿,表示,以太网规定连MAC头带正文(IP头、TCP头、HTTP头)不能抄错1500字节,超过则要分开传输;
qdisc表示 queueing discipline 是排队规格,数据包通过网络接口需要遵守的规则。pfifo_fast是其中一种。