shithub: riscv

Download patch

ref: 0c7a3ad1c9864a62174129bcd4adeef6c9dfac16
parent: 2247741fe0c788d5a48bca3f3aca02c5a3b8dcb2
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Wed May 2 16:29:29 EDT 2018

remove ipv6on, update ipconfig(8)

--- a/rc/bin/ipv6on
+++ /dev/null
@@ -1,104 +1,0 @@
-#!/bin/rc
-# ipv6on [netdir ndbfile [gwv4]] - configure an interface for ipv6,
-#	once ipv4 is configured.
-if (! ~ $#* 0 2 3) {
-	echo usage: $0 '[netdir ndbfile [gw-v4-name]]' >[1=2]
-	exit usage
-}
-rfork e
-if (~ $#* 0) {
-	netdir=/net
-	ndbf=/lib/ndb/local
-	gw=`{ndb/ipquery sys $sysname ipgw | sed 's/ipgw=//'}
-}
-if not {
-	netdir=$1
-	ndbf=$2
-	if (~ $#* 2)
-		# gw=()
-		gw=`{ndb/ipquery sys $sysname ipgw | sed 's/ipgw=//'}
-	if not
-		gw=$3
-}
-if (~ $netdir /net) {
-	xsfx=()
-	xdir=()
-}
-if not {
-	xsfx=(-x `{echo $netdir | sed 's;^/net;;'})
-	xdir=(-x $netdir)
-}
-fn nonnil {		# variable
-	if (~ $#$1 0) {
-		echo no ip for $1
-		exit no-ip
-	}
-	if (! ~ $#$1 1) {
-		echo multiple ips for $1
-		exit multiple-ips
-	}
-}
-devdir=`{awk '/^device/{print $2}' $netdir/ipifc/*/status | grep -v /dev/null}
-nonnil devdir
-devtype=pkt
-if(~ $devdir *ether*)
-	devtype=ether
-
-#
-# configure v6 for link-local addresses (fe80::) & multicast (ff02::)
-#
-if (! ip/ipconfig -6 $xdir $devtype $devdir)
-	exit 'ipconfig -6 failed'
-ip/ipconfig $xdir $devtype $devdir ra6 recvra 1
-
-mev6=`{ndb/query -f $ndbf sys $sysname ipv6 | grep :}
-if (~ $#mev6 0)
-	mev6=`{ndb/query -mf $ndbf sys $sysname ip | grep :}
-# mev4=`{ndb/query -f $ndbf sys $sysname ip | grep -v :}
-
-# for testing
-if(~ $devtype ether){
-	mylnk=`{ip/linklocal `{cat $devdir/addr}}
-	nonnil mylnk
-}
-
-if (~ $#gw 1) {
-	if (~ $gw [0-9]*.[0-9]*.[0-9]*.[0-9]*)
-		gwv4=$gw
-	if (~ $#gwv4 0)
-		gwv4=`{ndb/query -f $ndbf sys $gw ip | grep -v :}
-	if (~ $gw *:*)
-		gwv6=$gw
-	if (~ $#gwv6 0)
-		gwv6=`{ndb/query -f $ndbf sys $gw ipv6 | grep :}
-	if (~ $#gwv6 0)
-		gwv6=`{ndb/query -f $ndbf sys $gw ip | grep :}
-	if (~ $#gwv6 0) {
-		if (~ $#gwv4 1) {
-			# echo ping gw $gwv4...
-			# load arp cache with gw mac
-			ip/ping -qn 3 $netdir/icmp!$gwv4 >/dev/null >[2=1] &
-			sleep 1					# wait for ping
-
-			gweth=`{grep '* '^$gwv4^' ' $netdir/arp | awk '{print $4}' }
-			nonnil gweth
-			gwlnk=`{ip/linklocal $gweth}
-			nonnil gwlnk
-			gwv6=$gwlnk
-		}
-	}
-}
-nonnil mev6
-#
-# configure my global v6 addresses
-#
-ip/ipconfig $xdir $devtype $devdir	add $mev6 /64
-ip/ipconfig $xdir loopback /dev/null	add $mev6 /128
-
-if (~ $#gwv6 1) {
-	#
-	# add default v6 route to v6 addr of v4 gw
-	#
-	echo add :: /0 $gwv6 >$netdir/iproute	# need not be link-local
-}
-exit ''
--- a/sys/man/8/ipconfig
+++ b/sys/man/8/ipconfig
@@ -1,6 +1,6 @@
 .TH IPCONFIG 8
 .SH NAME
-ipconfig, rip, linklocal, ipv6on \- Internet configuration and routing
+ipconfig, rip, linklocal \- Internet configuration and routing
 .SH SYNOPSIS
 .in +0.25i
 .ti -0.25i
@@ -52,14 +52,6 @@
 ]
 .I mac
 \&...
-.PP
-.B ipv6on
-[
-.I netmtpt
-.I ndbfile
-[
-.I gwv4
-]\|]
 .SH DESCRIPTION
 .I Ipconfig
 binds a device interface to a mounted IP stack (default
@@ -73,12 +65,13 @@
 If DHCP is requested, it will also obtain the addresses of DNS
 servers, NTP servers, gateways, a Plan 9 file server,
 and a Plan 9 authentication server.
-If this is the first non-loopback
-interface on the IP stack, the information will be written to
+Information from DHCP and IPv6 router advertisements is written to
 .B /net/ndb
 in the form of an
 .IR ndb (8)
-entry.
+entry unless the
+.B P
+flag has been specified.
 .PP
 .I Type
 may be
@@ -175,7 +168,7 @@
 the default gateway.
 .TP
 .B G
-use only generic DHCP options.  Without this option,
+use only generic DHCP and RA options.  Without this option,
 .I ipconfig
 adds to requests a Vendor Class option with value
 .BI plan9_$ cputype
@@ -197,10 +190,15 @@
 .TP
 .B N
 look in
-.B /lib/ndb
-for the IP parameters.  This only works if the
-interface is an ethernet.  It uses the ethernet address to find
-a matching entry.
+.I dbfile
+(default
+.BR /lib/ndb/local )
+for the IP parameters for the specified IP address or if the
+IP is omited and the device is an ethernet then all IP parameters
+associated with the MAC address. IPv6 addresses are added only
+if a IPv6 link local address exists on the interface or the
+.B 6
+flag has been given to automatically configure one.
 .TP
 .B O
 addresses specified on the command line override those obtained via DHCP.
@@ -322,18 +320,6 @@
 .I 6to4
 gateway
 .IR gwipv4 .
-.PP
-.I Ipv6on
-uses the network database at
-.I ndbfile
-to configure the network mounted on
-.I netmtpt
-with a link-local address (derived from its MAC address)
-and attempts to add a default IPv6 route to the local
-IPv4 gateway's IPv6 address.
-If
-.I gwv4
-is supplied, it will be used as the gateway IPv4 address.
 .SH EXAMPLES
 Configure Ethernet 0 as the primary IP interface.
 Get all addresses via DHCP.  Start up a connection server
@@ -386,8 +372,6 @@
 .B /sys/src/cmd/ip/rip.c
 .br
 .B /sys/src/cmd/ip/linklocal.c
-.br
-.B /rc/bin/ipv6on
 .SH "SEE ALSO"
 .IR ether (3),
 .IR ip (3),