加入收藏
举报
02-14 20:04
#0
文件名称:
ifconfig.md
所在目录:
Openharmony v1.0 / docs / kernel
文件大小:
20.35 KB
下载地址:
fenwii/OpenHarmony
   
免责声明:本网站仅提供指向 GitHub 上的文件的链接,所有文件的版权归原作者所有,本网站不对文件内容的合法性、准确性或安全性承担任何责任。
文本预览:
# ifconfig
## 命令功能
ifconfig命令用来查询和设置网卡的IP地址、网络掩码、网关、硬件mac地址等参数。并能够启用/关闭网卡。
## 命令格式
ifconfig
\[_-a_\]
<_interface_\> <_address_\> \[_netmask _\] \[_gateway _\]
\[_hw ether _\] \[_mtu _\]
\[_inet6 add _\]
\[_inet6 del _\]
\[_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
```
点赞 回复
回帖
支持markdown部分语法 ?