You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
3.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# **ifconfig**
## 说明
**ifconfig命令** 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息在网卡重启后机器重启后配置就不存在
要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件
## 选项
```markdown
# 参数
add<地址>设置网络设备IPv6的ip地址
del<地址>删除网络设备IPv6的IP地址
down关闭指定的网络设备
<hw<网络设备类型><硬件地址>:设置网络设备的类型与硬件地址
io_addr<I/O地址>设置网络设备的I/O地址
irq<IRQ地址>设置网络设备的IRQ
media<网络媒介类型>:设置网络设备的媒介类型
mem_start<内存地址>:设置网络设备在主内存所占用的起始地址
metric<数目>:指定在计算数据包的转送次数时,所要加上的数目
mtu<字节>设置网络设备的MTU
netmask<子网掩码>:设置网络设备的子网掩码
tunnel<地址>建立IPv4与IPv6之间的隧道通信地址
up启动指定的网络设备
-broadcast<地址>:将要送往指定地址的数据包当成广播数据包来处理
-pointopoint<地址>:与指定地址的网络设备建立直接连线,此模式具有保密功能
-promisc关闭或启动指定网络设备的promiscuous模式
IP地址指定网络设备的IP地址
网络设备:指定网络设备的名称
```
## 实例
```bash
ifconfig # 显示网络设备信息(激活状态的)
: << comment
**eth0** 表示第一块网卡,其中`HWaddr`表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址是`00:16:3E:00:1E:51`
**inet addr** 用来表示网卡的IP地址此网卡的IP地址是`10.160.7.81`,广播地址`Bcast:10.160.15.255`,掩码地址`Mask:255.255.240.0`
**lo** 是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回坏地址在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到局域网的其它主机或用户无从知道
* 第一行连接类型Ethernet以太网HWaddr硬件mac地址
* 第二行网卡的IP地址、子网、掩码
* 第三行UP代表网卡开启状态RUNNING代表网卡的网线被接上MULTICAST支持组播MTU:1500最大传输单元1500字节
* 第四、五行:接收、发送数据包情况统计
* 第七行:接收、发送数据字节数统计信息
comment
# 获取IP地址
ifconfig eth0 | grep "inet addr:" | awk '{print $2}' | cut -c 6-
ifconfig eth0 | sed -n '2p' | awk '{print $2}' | cut -c 6-30
ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'
ifconfig eth0 | sed -n '/inet /{s/.*addr://;s/ .*//;p}'
ifconfig -a | perl -ne 'if ( m/^\s*inet (?:addr:)?([\d.]+).*?cast/ ) { print qq($1\n); exit 0; }' # perl获取方法
ifconfig eth0 up # 启动指定网卡
ifconfig eth0 down # 关闭指定网卡
ifconfig eth0 add 33ffe:3240:800:1005::2/64 # 为网卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:3240:800:1005::2/64 # 为网卡eth0删除IPv6地址
ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE # 用ifconfig修改MAC地址
ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255 # 配置IP地址
ifconfig eth0 arp #开启网卡eth0 的arp协议
ifconfig eth0 -arp #关闭网卡eth0 的arp协议
ifconfig eth0 mtu 1500 # 设置能通过的最大数据包大小为 1500 bytes
ifconfig # 处于激活状态的网络接口
ifconfig -a # 所有配置的网络接口,不论其是否激活
ifconfig eth0 # 显示eth0的网卡信息
```