ifconfig指令
前言
写的很简陋,但也是按着自己的思路做的笔记,开头是理解指令的全称以及含义,然后简略的介绍指令的作用,以及实际应用中的用处。
指令理解
首先理解ifconfig指令的全称——network interfaces configuring,中文含义为网络接口配置,network并没有出现在ifconfig指令中,interfaces即接口简写为if,configuring即配置简写为config,组合成ifconfig。
ifconfig指令,可以分为两个功能,一是查看网络设备信息,二是配置网络设备信息。
配置网络设备信息
ifconfig指令,可以用来配置网络设备,通过ifconfig [网络设备] [参数]
来实现。
如启动指定网络设备:ifconfig eth0 up
;
关闭指定网络设备:ifconfig eth0 down
;
设置最大传输单元:ifconfig eth0 mtu 1480
;
因为实际中并没有去配置过,更多的,是查看这些网络设备信息。
查看网络设备信息
直接输入ifconfig
指令的话,则是显示网络设备信息。以自己租来玩的腾讯云为例,来理解各参数的含义:
[root@VM_16_8_redhat ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.16.8 netmask 255.255.240.0 broadcast 172.16.31.255
ether 52:54:00:3f:6f:71 txqueuelen 1000 (Ethernet)
RX packets 23709778 bytes 2989709667 (2.7 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 23899057 bytes 3588080829 (3.3 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1 (Local Loopback)
RX packets 5476055 bytes 290234841 (276.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5476055 bytes 290234841 (276.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
inet:IPv4的IP地址
netmask:子网掩码
broadcast:广播地址
mtu:maximum transmission unit,最大传输单元,默认设置为1500
eth0:eth是Ethernet的简写,所以eth就表示这个网卡接口是一个以太网卡的接口,0是阿拉伯数字,表示接口的编号,0表示第一块网卡,如果有两块网卡,那么第二块网卡的名字为eth1,即从0开始。但并非所有服务器上的网卡命名都是eth开头。
lo:lo是local的简写,表示回环地址。它的IP地址是127.0.0.1,利用这个接口可以实现系统内部发送和接收数据。
实际应用中,通过该指令查看内网的ip信息,以及查看配置的网卡有多少块。emmm,好像也没怎么应用到这个指令。
查看内网ip以及外网ip
config指令显示的inet是内网ip,要查看外网ip,可以通过curl ifconfig.me
来查看。或者通过这个指令:curl members.3322.org/dyndns/getip
其他
其实原本想把nc指令和netstat指令也一起写的,这两个指令跟端口有关,当时在调试socket通信的时候,用来测试端口以及查看指定端口的监听情况,只是一段时间没用,就忘得七七八八了,等下次用到再来做笔记吧。