LiteOS-M轻量系统内核Shell命令之网络命令——ifconfig

jiecho
发布于 2021-7-21 18:06
浏览
0收藏

ifconfig

命令功能

ifconfig命令用来查询和设置网卡的IP地址、网络掩码、网关、硬件mac地址等参数。并能够启用/关闭网卡。

命令格式

ifconfig

[-a]

<interface> <address> [netmask <mask>] [gateway <address>]

[hw ether <address>] [mtu <size>]

[inet6 add <address>]

[inet6 del <address>]

[up|down]

参数说明

表 1 参数说明

参数

参数说明

取值范围

不带参数

打印所有网卡的IP地址、网络掩码、网

关、硬件mac地址、MTU、运行状态等信息。

N/A

-a

打印协议栈收发数据信息。

N/A

interface

指定网卡名,比如eth0。

N/A

address

设置IP地址,比如192.168.1.10,需指定网卡名。

N/A

netmask

设置子网掩码,后面要掩码参数,比如

255.255.255.0。

N/A

gateway

设置网关,后面跟网关参数,比如

192.168.1.1。

N/A

hw ether

设置mac地址, 后面是MAC地址,比如

00:11:22:33:44:55。目前只支持ether硬件类

型。

N/A

mtu

设置mtu大小,后面是mtu大小,比如1000。

  • 仅支持ipv4情况下的范围为

    [68,1500]。

  • 支持ipv6情况下的范围为

    [1280,1500]。

add

设置ipv6的地址,比如2001:a:b:c:d:e:f:d,需指定网卡名和inet6。

N/A

del

删除ipv6的地址,需指定网卡名和inet6。

N/A

up

启用网卡数据处理,需指定网卡名。

N/A

down

关闭网卡数据处理,需指定网卡名。

N/A

使用指南

  • 命令需要启动TCP/IP协议栈后才能使用。
  • 由于IP冲突检测需要反应时间,每次使用ifconfig设置IP后会有2S左右的延时。

使用实例

  1. ifconfig eth0 192.168.100.31 netmask 255.255.255.0 gateway 192.168.100.1 hw ether 00:49:cb:6c:a1:31
  2. ifconfig -a
  3. ifconfig eth0 inet6 add 2001:a:b:c:d:e:f:d
  4. ifconfig eth0 inet6 del 2001:a:b:c:d:e:f:d

输出说明

1、设置网络参数

OHOS # ifconfig eth0 192.168.100.31 netmask 255.255.255.0 gateway 192.168.100.1 hw ether 00:49:cb:6c:a1:31
OHOS # ifconfig
eth0     ip:192.168.100.31 netmask:255.255.255.0 gateway:192.168.100.1
HWaddr 00:49:cb:6c:a1:31 MTU:1500 Running Default Link UP
lo         ip:127.0.0.1 netmask:255.0.0.0 gateway:127.0.0.1
ip6: ::1/64
HWaddr 00 MTU:0 Running Link UP

 

输出的各参数说明如下表所示:

表 2 参数说明

参数

说明

ip

板子IP地址。

netmask

网络掩码。

gateway

网关。

HWaddr

板子硬件mac地址。

MTU

网络最大传输单元。

Running/Stop

网卡是否正在运行。

Default

有这项说明此网卡连接到默认网关。

Link UP/Down

网卡连接状态。

 

2、获取协议栈统计信息

OHOS # ifconfig -a
RX packets:6922  errors:0        ip dropped:4312         link dropped:67         overrun:0       bytes:0 (0.0 B)
RX packets(ip6):3     errors:0        dropped:0       overrun:0       bytes:0 (0.0 B)
TX packets:1394  errors:0        link dropped:67         overrun:0       bytes:0(0.0 B)
TX packets(ip6):3     errors:0        overrun:0       bytes:0(0.0 B)

输出的各参数说明如下表所示:

表 3 ifconfig -a 参数说明

参数

说明

RX packets

IP层已接收的正常数据包的个数。

RX error

IP层已接收的错误数据包的个数,错误类型包括长度错误,校验错误,IP option错误,IP首部protocol错误等。

RX dropped

IP层已丢弃的数据包的个数,丢弃原因包括数据包错误,封包无法转发,本地网卡处于关闭状态等。

RX overrun

MAC层向上层协议栈投递封包失败的个数,失败原因主要是协议栈资源不足。

RX bytes

IP层已接收的正常数据包的总长度,不包括重组未完成的分片的长度。

TX packets

IP层已正常发送或转发的数据包的个数。

TX error

IP层发送失败的数据包的个数,失败原因包括封包无法路由,封包在协议栈内处理失败等。

TX dropped

MAC层由于发送失败而丢弃的数据包个数,失败原因包括网卡驱动处理封包失败等。

TX overrun

暂未使用。

TX bytes

IP层已正常发送或者转发的数据包的总长度。

3、设置IPv6的地址信息

OHOS # ifconfig eth0 inet6 add 2001:a:b:c:d:e:f:d
OHOS # ifconfig
eth1    ip:192.168.3.60 netmask:255.255.255.0 gateway:0.0.0.0
HWaddr 00:0e:c6:a8:5a:c2 MTU:1500 Running Link UP
eth0    ip:192.168.2.60 netmask:255.255.255.0 gateway:0.0.0.0
ip6: 2001:A:B:C:D:E:F:D/64
HWaddr 46:44:02:02:03:03 MTU:1500 Running Link UP
lo        ip:127.0.0.1 netmask:255.0.0.0 gateway:127.0.0.1
ip6: ::1/64
HWaddr 00 MTU:16436 Running Link UP

4、删除IPv6的地址信息

OHOS # ifconfig eth0 inet6 del 2001:a:b:c:d:e:f:d
OHOS # ifconfig
eth1    ip:192.168.3.60 netmask:255.255.255.0 gateway:0.0.0.0
HWaddr 00:0e:c6:a8:5a:c2 MTU:1500 Running Link UP
eth0    ip:192.168.2.60 netmask:255.255.255.0 gateway:0.0.0.0
HWaddr 46:44:02:02:03:03 MTU:1500 Running Link UP
lo        ip:127.0.0.1 netmask:255.0.0.0 gateway:127.0.0.1
ip6: ::1/64
HWaddr 00 MTU:16436 Running Link UP

 

 

已于2021-7-21 18:06:13修改
收藏
回复
举报
回复