manpagez: man pages & more
man ipconfig(8)
Home | html | info | man
ipconfig(8)               BSD System Manager's Manual              ipconfig(8)


     ipconfig -- view and control IP configuration state


     ipconfig waitall
     ipconfig getifaddr interface-name
     ipconfig ifcount
     ipconfig getoption interface-name (option-name | option-code)
     ipconfig getpacket interface-name
     ipconfig getv6packet interface-name
     ipconfig setverbose level
     ipconfig set interface-name NONE
     ipconfig set interface-name (DHCP | BOOTP)
     ipconfig set interface-name (MANUAL | INFORM) ip-address subnet-mask
     ipconfig set interface-name NONE-V6
     ipconfig set interface-name AUTOMATIC-V6
     ipconfig set interface-name MANUAL-V6 ipv6-address prefix-length
     ipconfig set interface-name 6TO4


     ipconfig is a utility that communicates with the IPConfiguration agent to
     retrieve and set IP configuration parameters.  It should only be used in
     a test and debug context.  Using it for any other purpose is strongly
     discouraged.  Public API's in the SystemConfiguration framework are cur-
     rently the only supported way to access and control the state of IPCon-

     The IPConfiguration agent is responsible for configuring and managing the
     IP addresses on direct, connectionless interfaces such as IEEE 802.3 Eth-
     ernet and IEEE 1394 FireWire.  The IPConfiguration agent is a program
     bundle that is loaded and executed by the configd(8) process.

     The IPConfiguration agent implements the client side of the DHCP and
     BOOTP protocols described in RFC951, RFC1542, RFC2131, and RFC2132.  It
     also assigns and maintains static IP addresses.  It may also allocate and
     assign a link-local IP address if DHCP fails to acquire an IP address.

     In all cases, the IPConfiguration agent performs IP address conflict
     detection before assigning an IP address to an interface.


     The ipconfig utility provides several commands:

     waitall     Blocks until all network services have completed configuring,
                 or have timed out in the process of configuring.  This is
                 only useful for initial system start-up time synchronization
                 for legacy network services that are incapable of dealing
                 with dynamic network configuration changes.

     getifaddr interface-name
                 Prints to standard output the IP address for the first net-
                 work service associated with the given interface.  The output
                 will be empty if no service is currently configured or active
                 on the interface.

     ifcount     Prints the number of interfaces that IPConfiguration is capa-
                 ble of configuring.  The value that's printed will not change
                 unless relevant network interfaces are either added to or
                 removed from the system.

     getoption interface-name (option-name | option-code)
                 Prints the BOOTP/DHCP option with the given name or option
                 code integer value.  See bootpd(8) for option code names.  If
                 an option has multiple values e.g. domain_name_server, only
                 the first value is printed.

     getpacket interface-name
                 Prints to standard output the DHCP/BOOTP packet that the
                 client accepted from the DHCP/BOOTP server.  This command is
                 useful to check what the server provided, and whether the
                 values are sensible.  This command outputs nothing if
                 DHCP/BOOTP is not active on the interface, or the attempt to
                 acquire an IP address was unsuccessful.

     getv6packet interface-name
                 Prints to standard output the latest DHCPv6 packet that the
                 client accepted from the DHCPv6 server.  In the case of
                 stateful DHCPv6, it corresponds to the last packet from the
                 server that contained addressing information.  This command
                 is useful to check what the server provided, and whether the
                 values are sensible.  This command outputs nothing if DHCPv6
                 is not active on the interface.

     set interface-name NONE
     set interface-name (DHCP | BOOTP)
     set interface-name (MANUAL | INFORM) ip-address subnet-mask
     set interface-name NONE-V6
     set interface-name AUTOMATIC-V6
     set interface-name MANUAL-V6 ipv6-address prefix-length
     set interface-name 6TO4
                 Sets the interface to have a new temporary network service of
                 the given type.  Any existing services on the interface for
                 the particular protocol (IPv4 or IPv6) are first de-config-
                 ured before the new service is instantiated.

                 If NONE is specified, all existing IPv4 services are de-con-
                 figured.  If NONE-V6 is specified, all existing IPv6 services
                 are de-configured.

                 DHCP and BOOTP require no additional arguments. The IP
                 address, subnet mask, router, and DNS information are
                 retrieved automatically.

                 Both MANUAL and INFORM require the specification of an IP
                 address ip-address and a subnet mask subnet-mask.

                 The INFORM service configures the IP address statically like
                 MANUAL, but then broadcasts DHCP INFORM packets to retrieve
                 DHCP option information. If the DHCP server responds and sup-
                 plies a subnet mask, that subnet mask is used instead of the
                 specified subnet-mask.

                 AUTOMATIC-V6 requires no additional arguments.  The IPv6
                 address, prefix length and router are retrieved automati-

                 MANUAL-V6 requires the specification of the IPv6 address
                 ipv6-address and a prefix length prefix-length.

                 6TO4 only works on Six To Four (IFT_STF) interfaces e.g.
                 stf0.  If it is specified on a non-IFT_STF interface, it has
                 the same effect as specifying NONE-V6.

                 The set command requires root privileges.

                 Note: The set command is very useful for debugging, but it
                 can't be used to configure a persistent service.  The tempo-
                 rary services that are created only remain until the next
                 network configuration change occurs. See scselect(8).

     setverbose level
                 Enables or disables verbose mode logging in the IPConfigura-
                 tion agent. Specify a level value of 0 to disable verbose
                 logging, the default.  Specify a value of 1 to enable verbose
                 logging. This setting is persistent across boots of the oper-
                 ating system.

                 When enabled, verbose log files are generated in the direc-
                 tory /Library/Logs/CrashReporter.  The filenames follow the
                 naming convention

                 The setverbose command requires root privileges.


     # ipconfig getpacket en0
     op = BOOTREPLY
     htype = 1
     dp_flags = 0
     hlen = 6
     hops = 0
     xid = 1956115059
     secs = 0
     ciaddr =
     yiaddr =
     siaddr =
     giaddr =
     chaddr = 0:3:93:7a:d7:5c
     sname =
     file =
     Options count is 10
     dhcp_message_type (uint8): ACK 0x5
     server_identifier (ip):
     lease_time (uint32): 0x164a
     subnet_mask (ip):
     router (ip_mult): {}
     domain_name_server (ip_mult): {}
     domain_name (string):
     end (none):

     # ipconfig getoption en0 router


     configd(8), bootpd(8), scselect(8)


     The ipconfig command first appeared in Mac OS X Version 10.0 Public Beta.

Mac OS X                        March 27, 2013                        Mac OS X

Mac OS X 10.9 - Generated Thu Oct 17 20:07:05 CDT 2013
© 2000-2023
Individual documents may contain additional copyright information.