3 ipconfig, rip, linklocal, ipv6on \- Internet configuration and routing
63 binds a device interface to a mounted IP stack (default
65 and configures the interface with a local address and optionally
66 a mask, a remote address, a file server and an authentication server address.
67 If no device is specified, the first
69 device on the mounted IP stack is used.
70 The addresses can be specified in the command line or obtained via DHCP.
71 If DHCP is requested, it will also obtain the addresses of DNS
72 servers, NTP servers, gateways, a Plan 9 file server,
73 and a Plan 9 authentication server.
74 If this is the first non-loopback
75 interface on the IP stack, the information will be written to
93 except that it allows jumbo packets (up to ~9KB).
96 interface passes all IP packets to and from a user program.
99 the device can be any byte stream device.
103 determines the action performed. The usual verbs are:
107 if the device is not bound to the IP stack, bind it.
108 Add the given local address, mask, and remote address to the interface.
109 An interface may have multiple addresses.
112 remove the address from the device interface.
115 unbind the device interface and all its addresses from the
119 The IPv6-specific verbs, which take different arguments, are:
121 .BI "add6 " "prefix pfx-len onlink auto validlt preflt"
122 sets the named IPv6 parameters; see
126 .BI "ra6 " "[ keyword value ] ..."
127 sets IPv6 router advertisement parameter
135 non-zero also forks a process to
136 receive and process router advertisements.
140 enables IP routing on the interface,
141 forks a process to send router advertisements,
144 process is running, forks one.
152 if adding an address (the default action),
153 add the IPv6 link-local address.
156 the baud rate to use on a serial line
161 write the control string
163 to the ethernet device control file before starting to configure it.
164 May be repeated to specify multiple control writes.
167 use DHCP to determine any unspecified configuration parameters.
176 use only generic DHCP options. Without this option,
178 adds to requests a Vendor Class option with value
180 and also requests vendor specific options 128 and 129 which we
181 interpret as the Plan 9 file server and auth server.
182 Replies to these options contain a list of IP addresses for possible
183 file servers and auth servers.
186 the hostname to add to DHCP requests. Some DHCP
187 servers, such as the one used by Comcast, will not respond
188 unless a correct hostname is in the request.
191 the maximum IP packet size to use on this interface.
194 determine parameters but don't configure the interface.
199 for the IP parameters. This only works if the
200 interface is an ethernet. It uses the ethernet address to find
204 addresses specified on the command line override those obtained via DHCP.
205 A command line address of 0 implies no override.
208 write configuration information to
210 even if other network interfaces are already configured
213 do not write configuration information to
215 even if this is the first network interface to be configured
220 exits after trying DHCP for 15 seconds with no answer.
223 instead to fork a background process that keeps trying forever.
226 disable IPv6 duplicate discovery detection,
227 which removes any existing ARP table entry for one of our IPv6 addresses
228 before adding new ones.
231 use the IP stack mounted at
237 don't fork a process to keep the DHCP lease alive.
242 to the list of paramters requested of the DHCP server. The
243 result will appear in
245 should this be the first interface. The known options are:
249 arptimeout, baddr, bflen, bootfile, clientid, cookie, discovermask,
250 discoverrouter, dns, dom, dumpfile, etherencap, extpath, finger,
251 homeagent, impress, ipaddr, ipforward, ipgw, ipmask, irc, lease, log,
252 lpr, maxdatagram, maxmsg, message, mtu, name, netbiosdds, netbiosns,
253 netbiosscope, netbiostype, ni, nisdomain, nisplus, nisplusdomain,
254 nntp, nonlocal, ntp, overload, params, pathplateau, pathtimeout,
255 policyfilter, pop3, rebindingtime, renewaltime, rl, rootpath, rs,
256 serverid, smtp, st, staticroutes, stdar, subnetslocal, supplymask,
257 swap, sys, tcpka, tcpkag, tcpttl, tftp, time, timeoff, trailerencap,
258 ttl, type, vendorclass, www, xdispmanager, xfont
268 are always requested.
272 If DHCP is requested, a process is forked
273 off to renew the lease before it
274 runs out. If the lease does run out, this
275 process will remove any configured addresses
279 runs the routing protocol RIP.
280 It listens for RIP packets on connected networks and
281 updates the kernel routing tables.
287 broadcasts routing information onto the networks.
290 gathers routing information but doesn't write to the
291 route table. This is useful with
296 use the IP stack mounted at
302 turn on (voluminous) debugging.
305 prints the IPv6 link-local address corresponding to the given
313 EUI-64-based IPv6 address corresponding to
321 uses the network database at
323 to configure the network mounted on
325 with a link-local address (derived from its MAC address)
326 and attempts to add a default IPv6 route to the local
327 IPv4 gateway's IPv6 address.
330 is supplied, it will be used as the gateway IPv4 address.
332 Configure Ethernet 0 as the primary IP interface.
333 Get all addresses via DHCP. Start up a connection server
334 and DNS resolver for this IP stack.
344 Add a second address to the stack.
347 % ip/ipconfig ether /net/ether0 add 12.1.1.2 255.255.255.0
350 At Bell Labs, our primary IP stack is always to the company's internal
351 firewall-protected network. The following creates an external
352 IP stack to directly access the outside Internet. Note that the
353 connection server uses a different set of
355 files. This prevents us from confusing inside and outside name/address
359 % bind -b '#l1' /net.alt
360 % bind -b '#I1' /net.alt
361 % ip/ipconfig -x /net.alt -g 204.178.31.1 ether /net.alt/ether1\\
362 204.178.31.6 255.255.255.0
363 % ndb/cs -x /net.alt -f /lib/ndb/external
364 % ndb/dns -sx /net.alt -f /lib/ndb/external
365 % aux/listen -d /rc/bin/service.alt /net.alt/tcp
368 Get all addresses via DHCP.
369 Configure the IPv6 link-local address automatically
370 and listen for router announcements.
374 ip/ipconfig ra6 recvra 1
377 .B /sys/log/v6routeradv
379 .B /sys/src/cmd/ip/ipconfig
381 .B /sys/src/cmd/ip/rip.c
383 .B /sys/src/cmd/ip/linklocal.c
396 for IPv6's modified EUI-64