Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/feature_unix/sys/man/8/ipconfig – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
.TH IPCONFIG 8
2
.SH NAME
3
ipconfig, rip, linklocal, ipv6on \- Internet configuration and routing
4
.SH SYNOPSIS
5
.in +0.25i
6
.ti -0.25i
7
.B ip/ipconfig
8
.RB [ -6DGNOPdnpruX ]
9
.RB [ -b
10
.IR baud ]
11
.RB [ -c
12
.IR ctl ]
13
.RB [ -g
14
.IR gateway ]
15
.RB [ -h
16
.IR host ]
17
.RB [ -m
18
.IR mtu ]
19
.RB [ -o
20
.IR dhcp-opt ]
21
.RB [ -x
22
.IR netmtpt ]
23
[
24
.I type
25
[
26
.I device
27
]\|]
28
.RI [ verb ]
29
[
30
.I local
31
[
32
.I mask
33
[
34
.I remote
35
[
36
.I file-server
37
[
38
.I auth
39
]\|]\|]\|]\|]
40
.PP
41
.B ip/rip
42
.RB [ -bdr ]
43
.RB [ -x
44
.IR netmtpt ]
45
.PP
46
.B ip/linklocal
47
[
48
.B -t
49
.I gwipv4
50
]
51
.I mac
52
\&...
53
.PP
54
.B ipv6on
55
[
56
.I netmtpt
57
.I ndbfile
58
]
59
.SH DESCRIPTION
60
.I Ipconfig
61
binds a device interface (default
62
.BR /net/ether0 )
63
to a mounted IP stack (default
64
.BR /net )
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
The addresses can be specified in the command line or obtained via DHCP.
68
If DHCP is requested, it will also obtain the addresses of DNS
69
servers, NTP servers, gateways, a Plan 9 file server,
70
and a Plan 9 authentication server.
71
If this is the first non-loopback
72
interface on the IP stack, the information will be written to
73
.B /net/ndb
74
in the form of an
75
.IR ndb (8)
76
entry.
77
.PP
78
.I Type
79
may be
80
.BR ether ,
81
.BR gbe ,
82
.BR ppp ,
83
.BR pkt ,
84
or
85
.BR loopback .
86
The
87
.B gbe
88
type is equivalent to
89
.B ether
90
except that it allows jumbo packets (up to ~9KB).
91
The
92
.B pkt
93
interface passes all IP packets to and from a user program.
94
For
95
.B ppp
96
the device can be any byte stream device.
97
.PP
98
The verb (default
99
.IR add )
100
determines the action performed.  The usual verbs are:
101
.TF remove
102
.TP
103
.B add
104
if the device is not bound to the IP stack, bind it.
105
Add the given local address, mask, and remote address to the interface.
106
An interface may have multiple addresses.
107
.TP
108
.B remove
109
remove the address from the device interface.
110
.TP
111
.B unbind
112
unbind the device interface and all its addresses from the
113
IP stack.
114
.PD
115
.PP
116
The IPv6-specific verbs, which take different arguments, are:
117
.TP
118
.BI "add6 " "prefix pfx-len onlink auto validlt preflt"
119
sets the named IPv6 parameters; see
120
.IR ip (3)
121
for more detail.
122
.TP
123
.BI "ra6 " "[ keyword value ] ..."
124
sets IPv6 router advertisement parameter
125
.IR keyword 's
126
.IR value .
127
See
128
.IR ip (3)
129
for more detail.
130
Setting
131
.I recvra
132
non-zero also forks a process to
133
receive and process router advertisements.
134
Setting
135
.I sendra
136
non-zero also
137
enables IP routing on the interface,
138
forks a process to send router advertisements,
139
and if no
140
.I recvra
141
process is running, forks one.
142
.PD
143
.PP
144
The options are:
145
.TF M
146
.PD
147
.TP
148
.B 6
149
if adding an address (the default action),
150
add the IPv6 link-local address.
151
.TP
152
.B b
153
the baud rate to use on a serial line
154
when configuring
155
.BR PPP .
156
.TP
157
.B c
158
write the control string
159
.I ctl
160
to the ethernet device control file before starting to configure it.
161
May be repeated to specify multiple control writes.
162
.TP
163
.B d
164
use DHCP to determine any unspecified configuration parameters.
165
.TP
166
.B D
167
turn on debugging.
168
.TP
169
.B g
170
the default gateway.
171
.TP
172
.B G
173
use only generic DHCP options.  Without this option,
174
.I ipconfig
175
adds to requests a Vendor Class option with value
176
.BI plan9_$ cputype
177
and also requests vendor specific options 128 and 129 which we
178
interpret as the Plan 9 file server and auth server.
179
Replies to these options contain a list of IP addresses for possible
180
file servers and auth servers.
181
.TP
182
.B h
183
the hostname to add to DHCP requests.  Some DHCP
184
servers, such as the one used by Comcast, will not respond
185
unless a correct hostname is in the request.
186
.TP
187
.B m
188
the maximum IP packet size to use on this interface.
189
.TP
190
.B n
191
determine parameters but don't configure the interface.
192
.TP
193
.B N
194
look in
195
.B /lib/ndb
196
for the IP parameters.  This only works if the
197
interface is an ethernet.  It uses the ethernet address to find
198
a matching entry.
199
.TP
200
.B O
201
addresses specified on the command line override those obtained via DHCP.
202
A command line address of 0 implies no override.
203
.TP
204
.B p
205
write configuration information to
206
.BR /net/ndb ,
207
even if other network interfaces are already configured
208
.TP
209
.B P
210
do not write configuration information to
211
.BR /net/ndb ,
212
even if this is the first network interface to be configured
213
.TP
214
.B r
215
by default,
216
.I ipconfig
217
exits after trying DHCP for 15 seconds with no answer.
218
This option directs
219
.I ipconfig
220
instead to fork a background process that keeps trying forever.
221
.TP
222
.B u
223
disable IPv6 duplicate discovery detection,
224
which removes any existing ARP table entry for one of our IPv6 addresses
225
before adding new ones.
226
.TP
227
.B x
228
use the IP stack mounted at
229
.I netmtpt
230
instead of at
231
.BR /net .
232
.TP
233
.B X
234
don't fork a process to keep the DHCP lease alive.
235
.TP
236
.B o
237
adds
238
.I dhcpoption
239
to the list of paramters requested of the DHCP server.  The
240
result will appear in
241
.B /net/ndb
242
should this be the first interface.  The known options are:
243
.RS
244
.LP
245
.ft L
246
arptimeout, baddr, bflen, bootfile, clientid, cookie, discovermask,
247
discoverrouter, dns, dom, dumpfile, etherencap, extpath, finger,
248
homeagent, impress, ipaddr, ipforward, ipgw, ipmask, irc, lease, log,
249
lpr, maxdatagram, maxmsg, message, mtu, name, netbiosdds, netbiosns,
250
netbiosscope, netbiostype, ni, nisdomain, nisplus, nisplusdomain,
251
nntp, nonlocal, ntp, overload, params, pathplateau, pathtimeout,
252
policyfilter, pop3, rebindingtime, renewaltime, rl, rootpath, rs,
253
serverid, smtp, st, staticroutes, stdar, subnetslocal, supplymask,
254
swap, sys, tcpka, tcpkag, tcpttl, tftp, time, timeoff, trailerencap,
255
ttl, type, vendorclass, www, xdispmanager, xfont
256
.RE
257
.IP
258
The options
259
.BR ipmask ,
260
.BR ipgw ,
261
.BR dns ,
262
.BR sys ,
263
and
264
.B ntp
265
are always requested.
266
.TF M
267
.PD
268
.PP
269
If DHCP is requested, a process is forked
270
off to renew the lease before it
271
runs out.  If the lease does run out, this
272
process will remove any configured addresses
273
from the interface.
274
.PP
275
.I Rip
276
runs the routing protocol RIP.
277
It listens for RIP packets on connected networks and
278
updates the kernel routing tables.
279
The options are:
280
.TF M
281
.PD
282
.TP
283
.B b
284
broadcasts routing information onto the networks.
285
.TP
286
.B n
287
gathers routing information but doesn't write to the
288
route table.  This is useful with
289
.B \-d
290
to debug a network.
291
.TP
292
.B x
293
use the IP stack mounted at
294
.I netmtpt
295
instead of at
296
.BR /net .
297
.TP
298
.B d
299
turn on (voluminous) debugging.
300
.PP
301
.I Linklocal
302
prints the IPv6 EUI-64-based link-local address derived from the given
303
.I mac
304
address.
305
Given
306
.BR -t ,
307
.I linklocal
308
instead prints the
309
.I 6to4
310
EUI-64-based IPv6 address derived from
311
.I mac
312
and
313
.I 6to4
314
gateway
315
.IR gwipv4 .
316
.PP
317
.I Ipv6on
318
uses the network database at
319
.I ndbfile
320
to configure the network mounted on
321
.I netmtpt
322
with an IPv6 link-local address (derived from its MAC address)
323
and an IPv6 global address, either from an
324
.B ipv6
325
attribute for
326
.B $sysname
327
or the interface's MAC address,
328
if present,
329
or via stateless address autoconfiguration.
330
It also attempts to add a default IPv6 route from a router advertisement.
331
.SH EXAMPLES
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.
335
.IP
336
.EX
337
% bind -b '#l0' /net
338
% bind -a '#I0' /net
339
% ip/ipconfig
340
% ndb/cs
341
% ndb/dns -r
342
.EE
343
.PP
344
Add a second address to the stack.
345
.IP
346
.EX
347
% ip/ipconfig ether /net/ether0 add 12.1.1.2 255.255.255.0
348
.EE
349
.PP
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
354
.I ndb
355
files.  This prevents us from confusing inside and outside name/address
356
bindings.
357
.IP
358
.EX
359
% bind -b '#l1' /net.alt
360
% bind -b '#I1' /net.alt
361
% ip/ipconfig -x /net.alt -g 135.104.24.1 ether /net.alt/ether1\\
362
	135.104.24.14 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
366
.EE
367
.PP
368
Get all addresses via DHCP.
369
Configure the IPv6 link-local address automatically
370
and listen for router announcements.
371
.IP
372
.EX
373
ip/ipconfig -6 
374
ip/ipconfig ra6 recvra 1
375
.EE
376
.SH FILES
377
.B /sys/log/v6routeradv
378
.SH SOURCE
379
.B /sys/src/cmd/ip/ipconfig
380
.br
381
.B /sys/src/cmd/ip/rip.c
382
.br
383
.B /sys/src/cmd/ip/linklocal.c
384
.br
385
.B /rc/bin/ipv6on
386
.SH "SEE ALSO"
387
.IR ether (3),
388
.IR ip (3),
389
.IR loopback (3),
390
.IR ndb (6),
391
.IR 6in4 (8),
392
.IR dhcpd (8),
393
.IR ppp (8)
394
.br
395
.B /lib/rfc/rfc2373
396
for IPv6's modified EUI-64
397
.SH BUGS
398
Currently, SLAAC relies on each
399
.B ipnet
400
declaration containing an
401
.B ipv6pfx
402
attribute.
403
This should be replaced by a router advertisement prefix.