3 ipconfig, rip, linklocal \- Internet configuration and routing
57 binds a device interface to a mounted IP stack (default
59 and configures the interface with a local address and optionally
60 a mask, a remote address, a file server and an authentication server address.
61 If no device is specified, the first
63 device on the mounted IP stack is used.
64 The addresses can be specified in the command line or obtained via DHCP.
65 If DHCP is requested, it will also obtain the addresses of DNS
66 servers, NTP servers, gateways, a Plan 9 file server,
67 and a Plan 9 authentication server.
68 Information from DHCP and IPv6 router advertisements is written to
74 flag has been specified.
88 except that it allows jumbo packets (up to ~9KB).
91 interface passes all IP packets to and from a user program.
94 the device can be any byte stream device.
98 determines the action performed. The usual verbs are:
102 if the device is not bound to the IP stack, bind it.
103 Add the given local address, mask, and remote address to the interface.
104 An interface may have multiple addresses.
107 remove the address from the device interface.
110 unbind the device interface and all its addresses from the
114 The IPv6-specific verbs, which take different arguments, are:
116 .BI "add6 " "prefix pfx-len onlink auto validlt preflt"
117 sets the named IPv6 parameters; see
121 .BI "ra6 " "[ keyword value ] ..."
122 sets IPv6 router advertisement parameter
130 non-zero also forks a process to
131 receive and process router advertisements.
135 enables IP routing on the interface,
136 forks a process to send router advertisements,
139 process is running, forks one.
147 if adding an address (the default action),
148 add the IPv6 link-local address.
151 the baud rate to use on a serial line
156 write the control string
158 to the ethernet device control file before starting to configure it.
159 May be repeated to specify multiple control writes.
162 use DHCP to determine any unspecified configuration parameters.
171 use only generic DHCP and RA options. Without this option,
173 adds to requests a Vendor Class option with value
175 and also requests vendor specific options 128 and 129 which we
176 interpret as the Plan 9 file server and auth server.
177 Replies to these options contain a list of IP addresses for possible
178 file servers and auth servers.
181 the hostname to add to DHCP requests. Some DHCP
182 servers, such as the one used by Comcast, will not respond
183 unless a correct hostname is in the request.
186 the maximum IP packet size to use on this interface.
189 determine parameters but don't configure the interface.
196 for the IP parameters for the specified
200 is omited and the device is an ethernet then all IP parameters
201 associated with the MAC address. IPv6 addresses are added only
202 if a IPv6 link-local address exists on the interface or the
204 flag has been given to automatically configure one.
207 addresses specified on the command line override those obtained via DHCP.
208 A command line address of 0 implies no override.
211 write configuration information to
215 do not write configuration information to
221 exits after trying DHCP for 15 seconds with no answer.
224 instead to fork a background process that keeps trying forever.
227 disable IPv6 duplicate discovery detection,
228 which removes any existing ARP table entry for one of our IPv6 addresses
229 before adding new ones.
232 use the ndb database file
236 use the IP stack mounted at
242 don't fork a process to keep the DHCP lease alive.
247 to the list of paramters requested of the DHCP server. The
248 result will appear in
250 should this be the first interface. The known options are:
254 arptimeout, baddr, bflen, bootfile, clientid, cookie, discovermask,
255 discoverrouter, dns, dom, dumpfile, etherencap, extpath, finger,
256 homeagent, impress, ipaddr, ipforward, ipgw, ipmask, irc, lease, log,
257 lpr, maxdatagram, maxmsg, message, mtu, name, netbiosdds, netbiosns,
258 netbiosscope, netbiostype, ni, nisdomain, nisplus, nisplusdomain,
259 nntp, nonlocal, ntp, overload, params, pathplateau, pathtimeout,
260 policyfilter, pop3, rebindingtime, renewaltime, rl, rootpath, rs,
261 serverid, smtp, st, staticroutes, stdar, subnetslocal, supplymask,
262 swap, sys, tcpka, tcpkag, tcpttl, tftp, time, timeoff, trailerencap,
263 ttl, type, vendorclass, www, xdispmanager, xfont
273 are always requested.
277 If DHCP is requested, a process is forked
278 off to renew the lease before it
279 runs out. If the lease does run out, this
280 process will remove any configured addresses
284 runs the routing protocol RIP.
285 It listens for RIP packets on connected networks and
286 updates the kernel routing tables.
292 broadcasts routing information onto the networks.
295 gathers routing information but doesn't write to the
296 route table. This is useful with
301 use the IP stack mounted at
307 turn on (voluminous) debugging.
310 prints the IPv6 link-local address corresponding to the given
318 EUI-64-based IPv6 address corresponding to
325 Configure Ethernet 0 as the primary IP interface.
326 Get all addresses via DHCP. Start up a connection server
327 and DNS resolver for this IP stack.
337 Add a second address to the stack.
340 % ip/ipconfig ether /net/ether0 add 12.1.1.2 255.255.255.0
343 At Bell Labs, our primary IP stack is always to the company's internal
344 firewall-protected network. The following creates an external
345 IP stack to directly access the outside Internet. Note that the
346 connection server uses a different set of
348 files. This prevents us from confusing inside and outside name/address
352 % bind -b '#l1' /net.alt
353 % bind -b '#I1' /net.alt
354 % ip/ipconfig -x /net.alt -g 204.178.31.1 ether /net.alt/ether1\\
355 204.178.31.6 255.255.255.0
356 % ndb/cs -x /net.alt -f /lib/ndb/external
357 % ndb/dns -sx /net.alt -f /lib/ndb/external
358 % aux/listen -d /rc/bin/service.alt /net.alt/tcp
361 Configure the IPv6 link-local address automatically
362 and listen for router announcements.
366 ip/ipconfig ra6 recvra 1
371 .B /sys/src/cmd/ip/ipconfig
373 .B /sys/src/cmd/ip/rip.c
375 .B /sys/src/cmd/ip/linklocal.c
386 for IPv6's modified EUI-64