ifconfig 命令

用途

使用 TCP/IP 配置或显示网络的网络接口参数。

语法

Ifconfig 接口地址系列地址目标地址  ] ] [  参数... ] ]

Ifconfig 接口协议系列 ] 接口 协议系列

Ifconfig -我 ] [  -d ] [  -u ] [ 协议系列 ]

Ifconfig 接口tcp_low_rto 里都 | -tcp_low_rto ]

描述

可以使用 ifconfig 命令指定网络接口地址,并配置或显示当前网络接口配置信息。 系统启动时必须使用 ifconfig 命令定义系统上存在的每个接口的网络地址。 在系统启动后,也可以用来重新定义接口地址和其他的操作参数。 网络接口配置存放在运行的系统上,而且必须在系统每次重新启动重新设置。 如果设置 IFF_MULTICAST 标志,ifconfig 命令将解释该标志并且打印它的值。

接口可接收使用不同协议传输的信息,每个协议可能需要不同命名方案。 必须指定 addressfamily 参数,此参数可能更改其余参数的解释。 当前受支持的地址系列是 inetinet6

对于 DARPA-Internet 系列,inet,地址或是主机名数据库(即 /etc/hosts 文件)中的主机名,或是用因特网标准点分十进制表示法表示的 DARPA-Internet 地址。

虽然任何用户可以查询网络接口状态,但只有有管理权限的用户才能修改接口配置。

ifconfig 功能在未提供可选参数时显示网络接口的当前配置。

如果指定协议系列,那么 ifconfig 仅报告特定于该协议系列的详细信息。

只有超级用户才能修改网络接口的配置。

以太网、令牌环和 FDDI 接口支持免费 ARP。 此支持意味着分配 IP 地址时,主机会发送针对它自己的地址(新地址)的 APR 请求以告诉其他系统它的地址,以便他们可立即更新其 APR 条目。 也让主机检测重复的 IP 地址。 如果获取 ARP 请求的响应,错误将记录在 /var/adm/ras/errlog 中,可以使用 errpt 命令(或使用 SMIT 界面)查看错误标识 AIXIF_ARP_DUP_ADDR

ifconfig 命令会调用 ifconfig.ib 命令。 ifconfig.ib 命令显示界面信息,如下所示:
ib0:flags=e3a0063<UP,BROADCAST,NOTRAILERS,RUNNING,ALLCAST,MULTICAST,GROUPRT>
pmtu 2048 qkey 
0x1e qpn 0x48 lid 0x5c hca iba0 port 1 inet 1.2.3.120 netmask 0xffffff00 broadcast 
1.2.3.255 inet6 
fe80::2:c903:1:1e8d/64 tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
此界面现在显示路径 MTU (pmtu)、队列键 (qkey)、队列对编号 (qpn)、本地标识 (lid)、主机通道适配器 (hca) 和端口号 (port)。 在调试或诊断期间这些信息很有用。
注: 重新引导系统时,使用 Ifconfig 命令对接口的属性所作的任何更改都将丢失。

当使用 ifconfig 命令来指定 detach 命令时,将忽略所有其他选项。 指定 detach 命令会防止 ipconfig 命令中的垃圾字符导致任何错误。 例如,ifconfig en3 garbage detach 命令将正确运行,即使在包含错误选项时也是如此。

标志

描述
可选择使用 -a 标志来代替接口名称。 该标志告诉 ifconfig 显示系统中所有接口信息。
-d -d 标志显示关闭的接口。 只能将此标志与 -a-l 标志配合使用。
-l 可以使用此标志列示系统中所有可用接口,不带其他额外信息。 该标志的使用与所有其他标志和命令相互排斥,除 -d-u 以外。
-U -u 标志显示启动的接口。 只能将此标志与 -a-l 标志配合使用。
协议系列 此标志指定诸如 tcpudptcp6udp6icmpicmp6 的协议。

参数

描述
地址 指定网络接口的网络地址。 对于 inet 系列,address 参数是主机名或标准的点分十进制表示法的 IP 地址。
地址系列 指定要更改的网络地址系列。 当前受支持的是 inetinet6 地址系列。 此参数缺省值为 inet 地址系列。
目标地址 指定点对点链路的远程通讯端地址。
INTERFACE 指定显示或更改的网络接口配置值。 在使用 Ifconfig 命令时,必须指定带有 接口 参数的接口。 接口缩写包括:
  • at,指异步传输方式 (ATM)
  • en,指标准以太网 (inet)
  • et,指 IEEE 802.3 以太网 (inet)
  • gre,指通用路由封装隧道伪接口 (inet)
  • gif,指 IPv4-over-IPv6 隧道伪接口 (inet)
  • tr,指令牌环 (inet)
  • xt,指 X.25 (inet)
  • sl,指串行线路 IP (inet)
  • lo,指回送 (inet)
  • op,指串行 (inet)
  • vi,指虚拟 IP 地址 (inet)
  • ib,指 IP over InfiniBand (inet)
  • tap,指 TAP 伪以太网

请在缩写后面加上一个数字来标识特定接口 (例如,tr0).

如果尚未装入接口,那么 ifconfig Interface 装入该接口,而 netstat -in 则列示该接口。 在处理接口的状态查询时,将装入该接口(如果尚未装入)以完成查询处理。

PARAMETER 允许以下参数值:
alias
建立接口的其他网络地址。 如果更改网络编号,那么接收寻址至旧接口的数据包时此参数很有用。
 
allcast
设置令牌环接口以广播到网络上的所有环。
 
-全员
限制令牌环接口以仅广播到本地环。
 
任意播
(仅限于 inet6)添加指定的任意播地址。
 
-任播
(仅限于 inet6)删除指定的任意播地址。
 
arp
启用 Ifconfig 命令以在网络级别地址和链路级别地址之间的映射中使用 地址解析协议arp 值是缺省值。
 
-arp
禁用地址解析协议。
 
权限
保留以供将来使用。
 
网桥 (bridge)
保留以供将来使用。
 
布里奇
保留以供将来使用。
 
广播 地址
(仅 inet)指定要用来广播到网络的地址。 缺省广播地址的主机部分全部为 1。
 
校验和卸载
启用该标志来指示将传输 TCP 校验和卸载到适配器上。 此命令还会重置每个接口计数器,该计数器确定 TCP 是必须动态启用还是禁用校验和计算的卸载。
 
校验和卸载
禁用传输 TCP 校验和卸载。
 
创建
(仅限 TAP)创建网络接口。 您可以创建特定接口(如 tap0 ),也可以指定 tap 选项来创建下一个可用的 TAP 接口(如 ifconfig tap create)。
 
-爸爸
(仅 inet6)不要重复执行 IPv6 地址检测。
 
-debug
禁用依赖于驱动程序的调试代码。
 
删除
除去指定的网络地址。 如果错误地指定别名或不再需要别名,那么会使用此命令。 不正确设置 ns 地址会不必要地指定网络地址的主机部分。 除去所有 ns 地址允许您重新指定主机部分。
 
destroy
(仅限 TAP)破坏网络接口。 ifconfig 命令会从接口列表中除去指定的网络接口。 它还会从对象数据管理器 (ODM) 中除去该接口及其所有关联的 TAP 网络设备。
 
设备 dev_name
(仅限 ATM 网络接口)。 指定此接口关联的设备名。 与令牌环或以太网不同,对于 ATM 而言,接口和设备并不是一对一的对应关系。 对于 ATM 而言,每个设备可能有一个以上的接口。
 
detach
从网络接口列表中除去一个接口。 如果拆离最后的接口,将卸装网络接口驱动程序代码。 为了更改所连接接口的接口路由,必须拆离该接口并使用 ifconfig 重新添加该接口。
 
向下舍入
标记接口为不活动 (down),这禁止系统试图通过接口发送信息。 如果可能,ifconfig 命令也会将接口重置以禁止接受消息。 然而,使用该接口的路由不能自动地禁用。
 
eui64
(仅限 inet6)通过将指定地址的最后 64 个字节替换为接口标识以计算实际 IPv6 地址。
 
第一个
将 IPv6 地址放在接口的最前端,以选择它作为非绑定套接字的源。 使用此参数的语法如下:
ifconfig interface inet6 first address
 
菲尔斯塔利亚斯
与别名相同,但会将此地址设置在接口地址列表的前面,以选择它作为非绑定套接字的源。
 
标识
添加组标识到接口的组标识列表。 当转发到达接口的数据包时,列表用于确定要使用的路由。
 
-组 标识
删除接口组标识列表中的组标识。 当转发到达接口的数据包时,列表用于确定要使用的路由。
 
hwloop
启用硬件回送。 硬件回送指定接口处理的本地寻址数据包是使用关联适配器发送的。
 
-hwloop
禁用硬件回送。 硬件回送指定接口处理的本地寻址数据包必须使用关联适配器发送。
 
伊普斯特
指定可接收 IP 数据包(封装针对远程网络绑定的 ns 包)的因特网主机。 构造一个表面上的点对点链路,指定的地址被视作目的地的 ns 地址和网络。
 
ipv6dst
用来指定一个 IPv6 节点,该节点可以接收通过隧道封装 IPv6 或 IPv4 数据包的 IPv6 数据包。 点到点隧道接口表面上的目的地可能不是这些数据包的真实目的地。 然后,在隧道端点,解封装后的数据包可以转发至它们的最终目的地。
 
大批量发送
启用一个 LPAR 来将单个数据包中的大数据发送到另一个 LPAR 中。 它在实际适配器上的工作方式与 largesend 类似,但在这种情况下不执行 TCP 分段。 如果 VIOS 上的 SEA 支持 largesend,那么 LPAR 可以传输由 SEA 上的实际适配器分段的大数据。 使用 chdev 命令在 SEA 上启用 largesend 属性。
 
-大发送
通过虚拟以太网禁用 largesend 。 这是缺省值。
 
链接 [0-2]
启用接口的链路层的特定处理。 这 3 个选项特定于接口。 但是,在实际效果中,它们用于选择特定操作方式。 此用法的一个示例是启用串行线路因特网协议 (SLIP) 压缩,或选择某些以太网卡的连接器类型。 有关更多信息,请参阅特定驱动程序的联机帮助页。
 
-链接 [0-2]
禁用指定接口链路层的特定处理。
 
度量 数字
将接口的路由度量设置为 Number 变量指定的值。 缺省值是 0。 路由度量值由路由协议(routed 守护程序)使用。 较高的度量值将影响路由使其更少被采用。 度量值会计为到目标网络或主机的累加跳数。
 
监控
启用底层适配器来将链路状态更改通知给接口层。 该适配器必须支持链路状态回调通知。 如果使用了多路径路由,那么链接中断时将选择备用路由。
 
-监视
禁止监视适配器链接状态。
 
姆图
设置系统最大的 IP 包大小。 Value 变量可以是从 60 到 65535 的数字,但依赖于介质。 有关各接口的最大传输单位 (MTU) 值,请参阅网络和通信管理中的网络接口自动配置
 
网络掩码 掩码
指定必须保留以便将网络划分为子网的地址量。 此参数只能与 inet 地址系列配合使用。

Mask 变量包括本地地址的网络部分和子网部分,本地地址取自地址的主机字段。 掩码可以指定为单个十六进制数字,以 0x开头,采用标准因特网点分十进制表示法,或以 /etc/networks 文件中列出的名称或别名开头。

在 32 位地址中,对于为网络和子网部分保留的位位置, 掩码 变量包含 1s ,而 掩码 变量包含 0s (对于指定主机的位位置)。 Mask 变量至少包含标准网络部分。 子网段与网络段连在一起。

如果使用 netmask 参数但未指定 IP 地址,那么会更新所指定接口的第一个 IP 地址的网络掩码值。

 
PVC
(仅限 ATM 网络接口)。 指定此接口仅支持永久虚电路 (PVC) 类型的虚拟连接。
 
普克特链
启用该标志以表示该接口能够处理一起链接在输出路径上的多个数据包。
 
-区块链
禁用该标志以表示该接口能够处理一起链接在输出路径上的多个数据包。
 
svc_c 服务器地址
(仅限 ATM 网络接口)。 指定此接口将同时支持交换虚电路 (SVC) 和 PVC 类型的虚拟连接。 它进一步指定了该接口将是一个 ARP 客户机。 server_addr 是此客户机所使用的 ARP 服务器的 20 字节 ATM 地址的列表。 以 xx.xx....xx 的格式指定地址。 第一个条目视为主 ARP 服务器,其余条目视为辅助 ARP 服务器。 20 字节 ARP 服务器地址的列表必须以逗号分隔。
 
site6
设置 IPv6 站点编号(缺省值是 0)。 此命令只能与多站点节点上的站点本地地址配合使用。
 
svc_s
(仅限 ATM 网络接口)。 指定此接口同时支持 SVC 和 PVC 类型的虚拟连接。 它进一步指定了此接口是此逻辑 IP 子网 (LIS) 的 ARP 服务器。
 
安全性
保留以供将来使用。
 
snap
保留以供将来使用。
 
-快拍
保留以供将来使用。
 
tcp_低RTO
对低延迟快速网络(例如千兆以太网和 10 千兆以太网)上的 TCP 连接启用较低的重新传输超时 (RTO)。 如果网络遇到包丢失,那么相应的 TCP 连接将对 RTO 使用 rto 值。 rto 值的范围是 0 - 3000 毫秒。该运行时选项必须在 if_isno 标志字段中进行设置。 要使该标志生效,还必须设置 use_isno 选项。
 
TCP 数据包校验和
禁用验证到附加到接口的子网的本地流量的 TCP 数据校验和。 继续对 TCP、UDP 和 IP 头部分执行校验和验证。 继续对从本接口读取的或写到远程网络的接口的 TCP 数据的进行校验和验证。
 
-tcp_nocksum
启用验证到附加到接口的子网的本地流量的 TCP 数据校验和。 这是缺省值。
 
线程
(仅 inet)为接口配置专用内核线程。 此参数只能在具有多个 CPU 的 SMP 系统上使用。 此参数促使输入包被设备驱动程序和输入解复用器处理后排列到内核线程中。 此输入包由线程在 IP 和 TCP 或 UDP 中进行处理,而不是直接在中断级进行处理。 设置此参数可以改善中断处理期间高速适配器在单个 CPU 上到达瓶颈时的吞吐量,方法是允许在运行内核线程的其他 CPU 上处理输入包(改善的流水线技术)。 对于某些工作负载,由于存在线程调度负载,此参数会增加每个数据包的负载,从而导致较高的 CPU 使用率和(可能)较低的吞吐量。
 
-线程
(仅 inet)禁用已使用 thread 参数配置的内核线程支持。
 
隧道
配置可信通信的专用隧道。 隧道在两个可信节点之间建立一个虚拟链路,以便将数据包作为其他包头的有效内容进行传送。 隧道可以具有以下某个类型:
通用路由封装(GRE)隧道
需要隧道端点的源和目标 IPv4 地址作为 tunnel 参数值后面的自变量。 隧道是在两个端点之间创建的。
IPv4 over IPv6 隧道(GIF 隧道)
需要隧道的源 IPv6 地址。 该地址后跟一个目标 IPv4 地址和一个目标 IPv6 地址,用逗号进行分隔。 对于一对多隧道,每个目标由逗号进行分隔。
 
传输 接口
将地址及其相关的静态路由从 interface 传送到 tointerface。 对于 IPv6,此命令仅对使用 ifconfig 命令添加的地址生效。

ifconfig interface addressfamily address transfer tointerface

注: 如果要将 IP 地址从一个接口传输到另一个接口,并且如果目标接口不是该 IP 地址所属的虚拟 LAN (VLAN) 的一部分,那么必须将该 VLAN 添加到配置了该目标接口的适配器。
 
向上舍入
将接口标记为活动(up)。 设置接口的第一个地址时会自动使用此参数。 还可在发出 ifconfig down 命令后使用此参数启用接口。
 
vipa_iflist
将接口添加到必须使用该 vipa 参数作为传出数据包中源地址的接口列表。
 
-vipa_iflist
从配置为使用该 vipa 作为外发包源地址的接口列表中删除本接口。
 
作用域 addrscope 区域 zoneid
addrscope 指定的地址范围内,将接口移至 zoneid 指定的拓扑区域。 IPv6 区域定义在 RFC 4007 中。 此参数仅适用于 inet6。
里都 以毫秒为单位指定重新传输超时。 该值的范围是 0-3000。

需求: 您必须先设置 命令的 timer_wheel_tick 值,然后才能使用 Ifconfig 命令来设置 里都 值。 您指定的 rto 值必须等于已设置的 timer_wheel_tick 值或是该值的 10 倍的倍数。

可以根据每个具体接口来配置下列网络选项(通常称为“接口特定网络选项 (ISNO)”):

rfc1323 [0 | 1]
启用或禁用由 RFC 1323( 高性能的 TCP 扩展)指定的 TCP 增强。 值为 1 时指定所有使用此接口的 TCP 连接将试图与 RFC 增强协商。 值为 0 会对所有使用此接口的连接禁用 rfc1323。 SOCKETS 应用程序可以使用 塞佐克托特 子例程覆盖个别 TCP 连接上的此 ISNO 和全局行为。
-rfc1323
不对该网络的 rfc1323 使用 ISNO。 套接字应用程序可以使用 setsockopt 子例程来覆盖各个 TCP 连接上的全局行为。
tcp_mssdflt 编号
设置与远程网络通信时所使用的缺省最大段大小。 如果通过此接口通信,那么套接字会使用 Number 作为缺省最大段大小的值。
-tcp_mssdflt
不对 tcp_mssdflt 选项使用 ISNO。 改用通过 /usr/sbin/no 处理的全局值。
tcp_recvspace 大小
指定接收数据的接口套接字的缺省套接字缓冲区大小。 缓冲区大小影响 TCP 使用的窗口大小。 (有关更多信息,请参阅 命令。)
-tcp_接收空间
不对 tcp_recvspace 选项使用 ISNO。 而使用全局值。
tcp_sendspace 大小
指定发送数据的接口套接字的缺省套接字缓冲区大小。 缓冲区大小影响 TCP 使用的窗口大小。 (有关更多信息,请参阅 no 命令。)
-tcp_sendspace
不对 tcp_sendspace 选项使用 ISNO。 而使用全局值。
tcp_nodelay [0 | 1]
指定通过此接口使用 TCP 的套接字在您发送数据时遵循 Nagle 算法。 缺省情况下,TCP 遵循 Nagle 算法。
-tcp_nodelay
不对 tcp_nodelay 选项使用 ISNO。
提示:下次重新启动系统时,您使用 ifconfig 命令设置的参数将丢失。 如果要使参数更改永久有效,请使用 chdev 命令更改每个接口的对象数据管理器(ODM)数据库。 使用 lsattr -E -l [interface] 命令来查看接口属性,并使用 chdev -l [interface] -a [attribute=value] 命令来更改该属性。 例如:
   lsattr -E -l en0
   chdev -l en0 -a tcp_sendspace=65536

安全性

RBAC 用户和可信AIX用户请注意:此命令可执行特权操作。 只有特权用户才能执行特权限定的操作。 有关授权和权限的更多信息,请参阅安全中的特权命令数据库。 要获取与此命令相关联的特权和权限的列表,请参阅 lssecattr 命令或 getcmdattr 子命令。

示例

  1. 要查询串行线路 IP 接口的状态,请输入以下命令:
    ifconfig  sl1
    在此示例中,要查询的接口为sl1. 命令的结果看起来与以下结果类似:
    sl1:  flags=51<UP,POINTOPOINT,RUNNING>
                inet  192.9.201.3  -->  192.9.354.7  netmask  ffffff00
  2. 要配置本地回送接口,请输入以下命令:
    ifconfig  lo0  inet  127.0.0.1  up
  3. 要将本地令牌环接口标记为当机,请输入以下命令:
    ifconfig  tr0  inet  down
    在此示例中,要标记的接口为token0.

    注:只有具有 root 用户权限的用户能修改网络接口配置。

  4. 要对所有连接关闭 rfc1323 ,请关闭en5(假定全局值是 1) ,请输入以下命令:
    ifconfig en0 rfc1323 0
  5. 要配置使用 vipa 的接口列表,请输入以下命令:
    ifconfig vi0 vipa_iflist en0,en1,tr0
  6. 要除去配置为使用 vipa 的接口,请输入以下命令:
    ifconfig vi0 -vipa_iflist en1,tr0
  7. 要查找配置为使用 vipa 的接口(如 vi0),请输入以下命令:
    ifconfig vi0
  8. 要启用链路状态监视,请输入以下命令:
    ifconfig en0 monitor
    如果适配器 ent0 上的链路状态更改为 down,那么适配器将通知接口层,这将导致接口也标记为 down
  9. 要配置两个节点的接口之间的“通用路由封装”(GRE)隧道,请输入以下命令:
    ifconfig gre0 tunnel 9.3.149.70 9.3.149.121
    这将在本地接口 9.3.149.70 和远程接口 9.3.149.121之间创建 GRE 隧道。 该隧道的本地端以 gre0 标识。
  10. 要使某个 IP 地址与新创建的接口相关联,请输入以下命令:
    ifconfig gre0 10.10.10.1
  11. 要在 GRE 隧道上配置 NAT,请输入以下命令:
    ifconfig gre0 nat toaddr 127.0.0.1 fromport 80 toport 8080 
    在该示例中,GRE 包的原始目标端口是 80,该命令将目标端口更改为 8080,而将目标地址更改为 127.0.0.1
  12. 要在一对多端点(一对多隧道)之间配置 GIF 隧道,请输入以下命令:
    ifconfig gif0 10.10.10.1 netmask 255.255.255.0 tunnel  2000::4612:6995:6c4a:fa6e 
    10.10.10.10,2000::4612:6995:6c4a:fa6a 10.10.10.11,2000::4612:6995:6c4a:
    fa6b 15.15.15.1,2000::4612:6995:6c4a:f777
    该命令在源 (2000::4612:6995:6c4a:fa6e) 与以下 3 个目标之间创建一对多隧道:
    • 2000::4612:6995:6c4a:fa6a
    • 2000::4612:6995:6c4a:fa6b
    • 2000::4612:6995:6c4a:f777
    该命令还将 10.10.10.1 IP 地址配置给 GIF 接口。
  13. 要在两个端点之间配置一对一 GIF 隧道,请输入以下命令:
    ifconfig gif0 10.10.10.1 netmask 255.255.255.0 tunnel  2000::4612:6995:6c4a:fa6e 
    10.10.10.10,2000::4612:6995:6c4a:fa66
    该命令在源(2000::4612:6995:6c4a:fa6e)和目标(2000::4612:6995:6c4a:fa66)之间创建一个 GIF 隧道:
  14. 该命令还将 10.10.10.1 IP 地址配置给 GIF 接口。

文件

描述
/etc/host 包含主机名数据库。
/etc/networks 包含网络名称。