summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren 'Tadgy' Austin <darren@afterdark.org.uk>2019-11-19 20:47:20 +0000
committerRobby Workman <rworkman@slackware.com>2019-11-20 00:40:47 -0600
commitb43606259cb4af8a0c120d1bbf25d99d5dec6975 (patch)
treedf9ff5c9516fdfb8703595c2441d70182deb1d8e
parent6778b18e8a3550eff78ba4b5a5eb160ad767590c (diff)
downloadslacknetsetup-b43606259cb4af8a0c120d1bbf25d99d5dec6975.tar.xz
IPv6 configuration support in netconfig. See full log.
A lot of the changes are formatting (I had a bug I couldn't hunt down and the formatting wasn't helping), but there's quite a few new dialogs - not only to configure IPv6, but adding better user input issue handling. * Modify creation of the rc.inet1.conf file to incorporate IPv6. * Edited error text in syntax_check_color() to be more generic. * Added SLAAC option to the configuration type menu. * Added a new DHCP selection menu to cater for v4, v6 and both configurations. * Edited various dialog texts to be more consistent and/or IPv6 friendly. * Validate netmask that's entered by the user. * Produce an error about missing netmask when IPv4 IP is set. * Only do netmask and gateway (IPv4) prompting if an IPv4 address was set. * Added static IPv6 configuration dialogs. * Updated nameserver configuration dialog. * Added IPv6 fields to the final static IP confirmation/edit screen.
-rw-r--r--netconfig469
1 files changed, 310 insertions, 159 deletions
diff --git a/netconfig b/netconfig
index f8f62f9..d2ed765 100644
--- a/netconfig
+++ b/netconfig
@@ -15,10 +15,16 @@ write_config_files() {
# we use the IP in other places, we need to make a copy for here.
RCIPCOPY=$IPADDR
RCMASKCOPY=$NETMASK
+RCIP6COPY=$IPADDR6
+RCPREFIXCOPY=$PREFIX6
if [ "$RCIPCOPY" = "127.0.0.1" ]; then
RCIPCOPY=""
RCMASKCOPY=""
fi
+if [ "$RCIP6COPY" = "::1" ]; then
+ RCIP6COPY=""
+ RCPREFIXCOPY=""
+fi
# echo "Creating /$RC..."
/bin/cat << ENDFILE > $RC
@@ -55,9 +61,9 @@ IPALIASES[0]=""
USE_DHCP[0]="$USE_DHCP"
DHCP_HOSTNAME[0]="$DHCP_HOSTNAME"
# IPv6 config information for eth0:
-IP6ADDRS[0]=""
-USE_SLAAC[0]=""
-USE_DHCP6[0]=""
+IP6ADDRS[0]="`if [ ! \"$RCIP6COPY\" = \"\" ]; then echo \"$RCIP6COPY/$RCPREFIXCOPY\"; fi`"
+USE_SLAAC[0]="$USE_SLAAC"
+USE_DHCP6[0]="$USE_DHCP6"
# IPv4 config information for eth1:
IPADDR[1]=""
@@ -95,7 +101,7 @@ USE_DHCP6[3]=""
# IPv4 default gateway IP address:
GATEWAY="$GATEWAY"
# IPv6 default gateway IP address:
-GATEWAY6=""
+GATEWAY6="$GATEWAY6"
# =============================================================================
@@ -361,7 +367,7 @@ fi
# example: syntax_check 123.22.43.1 4
# returns: 0=found correct 1=too many fields 2=non numeric field found
syntax_check_color() {
- RET_CODE=0
+ RET_CODE=0
SCRATCH=$1
SCRATCH=`echo $SCRATCH | tr "." "/"`
INDEX=$2
@@ -381,16 +387,11 @@ syntax_check_color() {
fi
if [ "$3" = "WARN" -a ! "$RET_CODE" = "0" ]; then
cat << EOF > $TMP/tempmsg
-
-The address you have entered seems to be non-standard. We were expecting
-$2 groups of numbers seperated by dots, like: 127.0.0.1
-Are you absolutely sure you want to use the address $1?
-
+The value you have entered seems to be non-standard. We were
+expecting $2 groups of numbers seperated by dots, like: 127.0.0.1
+Please enter a valid value.
EOF
- dialog --title "WARNING" --yesno "`cat $TMP/tempmsg`" 9 72
- if [ $? = 0 ]; then
- RET_CODE = 0;
- fi
+ dialog --title "INVALID VALUE" --defaultno --msgbox "`cat $TMP/tempmsg`" 7 72
rm -r $TMP/tempmsg
else
if [ "$3" = "ECHO" ]; then
@@ -411,14 +412,16 @@ RC=etc/rc.d/rc.inet1.conf # Where rc.inet1.conf file is.
RESOLV=etc/resolv.conf # Where resolv.conf file is.
HOSTS=etc/hosts # Where hosts file is.
ETCNETWORKS=etc/networks # Where networks file is.
-USE_DHCP="" # Use DHCP? "" == no.
-DHCP_HOSTNAME="" # This is our DHCP hostname.
#
# defaults:
+USE_DHCP="" # Use DHCP? "" == no.
+USE_DHCP6=""
+DHCP_HOSTNAME="" # This is our DHCP hostname.
NETWORK=127.0.0.0
IPADDR=127.0.0.1
-NETMASK=255.255.255.0
-
+NETMASK=24 # Use CIDR now.
+IPADDR6=::1
+PREFIX6=64
# Main loop:
while [ 0 ]; do
@@ -507,9 +510,10 @@ services), select 'DHCP'. If you do not have a network card, select \
the 'loopback' choice. You may also select 'NetworkManager' if you would \
like to have the NetworkManager daemon automatically handle your wired and \
wireless network interfaces (this is simple and usually works). \
-Which type of network setup would you like?" 20 70 4 \
-"static IP" "Use a static IP address to configure ethernet" \
-"DHCP" "Use a DHCP server to configure ethernet" \
+Which type of network setup would you like?" 21 77 5 \
+"SLAAC" "Use only IPv6 SLAAC to configure ethernet" \
+"static IP" "Use a static IPv4 or IPv6 address to configure ethernet" \
+"DHCP" "Use a DHCP (IPv4 or IPv6) server to configure ethernet" \
"loopback" "Set up a loopback connection (modem or no net)" \
"NetworkManager" "Autoconfigure network using NetworkManager" 2> $TMP/reply
if [ $? = 1 -o $? = 255 ]; then
@@ -520,7 +524,27 @@ REPLY=`cat $TMP/reply`
rm -f $TMP/reply
if [ "$REPLY" = "DHCP" ]; then
- USE_DHCP="yes"
+ dialog --title "SELECT DHCP TYPE" --default-item "DHCPv4" --menu \
+"Please select the type of DHCP to use to configure your networking.
+Select 'DHCPv4' to configure for an IPv4 network (this is the most
+common type of network, and the safe choice). Select 'DHCPv6' for a
+pure IPv6 network, or 'Both' to try and set up both types of network." 13 73 3 \
+"DHCPv4" "An IPv4 based network, with no IPv6 configuration" \
+"DHCPv6" "An IPv6 based network, with no IPv4 configuration" \
+"Both" "A combination of IPv4 and IPv6 networks" 2>$TMP/reply
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/reply
+ exit
+ fi
+ TYPE=`cat $TMP/reply`
+ if [ "$TYPE" = "DHCPv4" ]; then
+ USE_DHCP="yes"
+ elif [ "$TYPE" = "DHCPv6" ]; then
+ USE_DHCP6="yes"
+ else
+ USE_DHCP="yes"
+ USE_DHCP6="yes"
+ fi
dialog --title "SET DHCP HOSTNAME" --inputbox "Some network providers require \
that the DHCP hostname be set in order to connect. If so, they'll have assigned \
a hostname to your machine, which may look something like CC-NUMBER-A (this \
@@ -536,136 +560,252 @@ elif [ "$REPLY" = "loopback" ]; then
elif [ "$REPLY" = "NetworkManager" ]; then
LOOPBACK="yes"
NETWORKMANAGER="yes"
+elif [ "$REPLY" = "SLAAC" ]; then
+ LOOPBACK="no"
+ USE_SLAAC="yes"
else
LOOPBACK="no"
fi
-if [ "$LOOPBACK" = "no" -a ! "$USE_DHCP" = "yes" ]; then
-
- while [ 0 ]; do
- if [ -r $TMP/SeTIP ]; then
- IPADDR=`cat $TMP/SeTIP`
- fi
- cat << EOF > $TMP/tempmsg
-Enter your IP address for the local machine. Example:
-111.112.113.114
-Enter IP address for $HOSTNM (aaa.bbb.ccc.ddd):
-EOF
- dialog --title "ENTER IP ADDRESS FOR '$HOSTNM.$DOMAIN'" --inputbox \
-"`cat $TMP/tempmsg`" \
-10 68 $IPADDR 2> $TMP/SeTlip
- if [ $? = 1 -o $? = 255 ]; then
- rm -f $TMP/SeTlip $TMP/tempmsg
- exit
- fi
- IPADDR="`cat $TMP/SeTlip`"
- rm -f $TMP/SeTlip $TMP/tempmsg
- if [ "$IPADDR" = "" ]; then
- continue;
- fi
- syntax_check_color $IPADDR 4 WARN
- if [ $? = 0 ]; then
- echo $IPADDR > $TMP/SeTIP
- break;
- fi
- done
+if [ "$LOOPBACK" = "no" -a ! "$USE_DHCP" = "yes" -a ! "$USE_SLAAC" = "yes" ]; then
+ while [ 0 ]; do
+ while [ 0 ]; do
+ if [ -r $TMP/SeTIP ]; then
+ IPADDR=`cat $TMP/SeTIP`
+ fi
+ dialog --title "ENTER IPv4 ADDRESS FOR '$HOSTNM.$DOMAIN'" --inputbox \
+"Enter the IPv4 address for the local machine. Example: 111.112.113.114
+If you do not want to configure a static IPv4 address, just hit ENTER. " \
+ 9 75 $IPADDR 2> $TMP/SeTlip
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTlip
+ exit
+ fi
+ IPADDR="`cat $TMP/SeTlip`"
+ rm -f $TMP/SeTlip
+ if [ "$IPADDR" = "" ]; then
+ break
+ fi
+ syntax_check_color $IPADDR 4 WARN
+ if [ $? = 0 ]; then
+ echo $IPADDR > $TMP/SeTIP
+ break
+ fi
+ done
+
+ if [ ! "$IPADDR" = "" ]; then
+ while [ 0 ]; do
+ if [ -r $TMP/SeTnetmask ]; then
+ NETMASK=`cat $TMP/SeTnetmask`
+ fi
+ dialog --title "ENTER NETMASK FOR IPv4 NETWORK" --inputbox \
+"Enter the netmask for your IPv4 network.
+This will generally be a single number (eg, 24)
+or look something like this: 255.255.255.0." 10 55 $NETMASK 2> $TMP/SeTnmask
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTnmask
+ exit
+ fi
+ NETMASK="`cat $TMP/SeTnmask`"
+ rm -f $TMP/SeTnmask
+ if [ "$NETMASK" = "" ]; then
+ dialog --title "NETMASK REQUIRED" --msgbox \
+"You have configured this host with a v4
+IP address - a netmask is required." 6 43
+ continue
+ fi
+ if (($NETMASK == 0)) 2>/dev/null || (($NETMASK > 32)) 2>/dev/null; then
+ dialog --title "NETMASK INVALID" --msgbox \
+"The netmask you entered is not valid.
+Valid netmasks will be in the range 1-32." 6 45
+ continue
+ elif (($NETMASK)) 2>/dev/null; then
+ echo $NETMASK > $TMP/SeTnetmask
+ break
+ else
+ syntax_check_color $NETMASK 4 WARN
+ if [ $? = 0 ]; then
+ echo $NETMASK > $TMP/SeTnetmask
+ break
+ fi
+ fi
+ done
+ while [ 0 ]; do
+ if [ -r $TMP/SeTgateway ]; then
+ GATEWAY=`cat $TMP/SeTgateway`
+ fi
+ dialog --title "ENTER IPv4 GATEWAY ADDRESS" --inputbox \
+"Enter the address for the IPv4 gateway on your network, such as:
+ `echo $IPADDR | cut -f 1-3 -d .`.1
+
+If you don't have an IPv4 gateway on your network just hit ENTER
+without entering a gateway IP address.
- while [ 0 ]; do
- if [ -r $TMP/SeTnetmask ]; then
- NETMASK=`cat $TMP/SeTnetmask`
- fi
- cat << EOF > $TMP/tempmsg
-Enter your netmask. This will generally look something
-like this: 255.255.255.0
-Enter netmask (aaa.bbb.ccc.ddd):
-EOF
- dialog --title "ENTER NETMASK FOR LOCAL NETWORK" --inputbox \
-"`cat $TMP/tempmsg`" \
-10 65 $NETMASK 2> $TMP/SeTnmask
- if [ $? = 1 -o $? = 255 ]; then
- rm -f $TMP/SeTnmask $TMP/tempmsg
- exit
- fi
- NETMASK="`cat $TMP/SeTnmask`"
- rm -f $TMP/SeTnmask $TMP/tempmsg
- if [ "$NETMASK" = "" ]; then
- continue;
- fi
- syntax_check_color $NETMASK 4 WARN
- if [ $? = 0 ]; then
- echo $NETMASK > $TMP/SeTnetmask
- break;
- fi
- done
-
- # Set broadcast/network addresses automatically:
- BROADCAST=`ipmask $NETMASK $IPADDR | cut -f 1 -d ' '`
- NETWORK=`ipmask $NETMASK $IPADDR | cut -f 2 -d ' '`
-
- while [ 0 ]; do
- if [ -r $TMP/SeTgateway ]; then
- GATEWAY=`cat $TMP/SeTgateway`
- fi
- cat << EOF > $TMP/tempmsg
-Enter the address for the gateway on your network, such as:
-`echo $IPADDR | cut -f 1-3 -d .`.1
+Enter IPv4 gateway address (aaa.bbb.ccc.ddd):" 14 68 $GATEWAY 2> $TMP/SeTgate
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTgate
+ exit
+ fi
+ GATEWAY="`cat $TMP/SeTgate`"
+ rm -f $TMP/SeTgate
+ if [ "$GATEWAY" = "" ]; then
+ echo > $TMP/SeTgateway
+ break
+ fi
+ syntax_check_color $GATEWAY 4 WARN
+ if [ $? = 0 ]; then
+ echo $GATEWAY > $TMP/SeTgateway
+ break
+ fi
+ done
+ fi
-If you don't have a gateway on your network just hit ENTER
+ while [ 0 ]; do
+ if [ -r $TMP/SeTIP6 ]; then
+ IPADDR6=`cat $TMP/SeTIP6`
+ fi
+ dialog --title "ENTER IPv6 ADDRESS FOR '$HOSTNM.$DOMAIN'" --inputbox \
+"Enter the IPv6 address for the local machine.
+Example: fe80:426c:ffff::365a
+If you do not want to configure a static IPv6 address, just hit ENTER." \
+ 10 74 $IPADDR6 2> $TMP/SeTlip6
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTlip6
+ exit
+ fi
+ IPADDR6="`cat $TMP/SeTlip6`"
+ rm -f $TMP/SeTlip6
+ if [ "$IPADDR6" = "" ]; then
+ if [ "$IPADDR" = "" ]; then
+ dialog --title "NO IP ADDRESSES" --yesno \
+"You have not configured any IP addresses for your system.
+Are you sure you want to proceed with no IPs?" 6 61
+ if [ $? = 0 ]; then
+ break 2
+ else
+ continue 2
+ fi
+ fi
+ else
+ # We can only do a basic validation of the entered address
+ # as regexes for IPv6 addresses are very complex.
+ if echo "$IPADDR6" | grep -E "^[0-9a-fA-F:]+$" >/dev/null; then
+ echo $IPADDR6 > $TMP/SeTIP6
+ break
+ else
+ dialog --title "INVALID IP ADDRESS" --msgbox \
+"The IP address you entered is not valid.
+Please enter a valid IPv6 address." 6 44
+ continue
+ fi
+ fi
+ done
+
+ if [ ! "$IPADDR6" = "" ]; then
+ while [ 0 ]; do
+ if [ -r $TMP/SeTprefix6 ]; then
+ PREFIX6=`cat $TMP/SeTprefix6`
+ fi
+ dialog --title "ENTER IPv6 PREFIX FOR LOCAL NETWORK" --inputbox \
+"Enter your IPv6 prefix length.
+This will be a single number (eg, 64)" 9 55 $PREFIX6 2> $TMP/SeTprefix6
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTprefix6
+ exit
+ fi
+ PREFIX6="`cat $TMP/SeTprefix6`"
+ if [ "$PREFIX6" = "" ]; then
+ dialog --title "PREFIX REQUIRED" --msgbox \
+"You have configured this host with a v6
+IP address - a prefix is required." 6 43
+ continue
+ elif (($PREFIX6 == 0)) 2>/dev/null || (($PREFIX6 > 128)) 2>/dev/null || \
+ ! (($PREFIX6)) 2>/dev/null; then
+ dialog --title "PREFIX INVALID" --msgbox \
+"The prefix you entered is not valid.
+Valid prefixes will be in the range 1-128." \
+6 46
+ continue
+ else
+ echo $PREFIX6 >$TMP/SeTprefix6
+ break
+ fi
+ done
+
+ while [ 0 ]; do
+ if [ -r $TMP/SeTgateway6 ]; then
+ GATEWAY6=`cat $TMP/SeTgateway6`
+ fi
+ dialog --title "ENTER IPv6 GATEWAY ADDRESS" --inputbox \
+"Enter the address for the IPv6 gateway on your network, such as:
+ fe80:426c:ffff::1
+
+If you don't have an IPv6 gateway on your network just hit ENTER
without entering a gateway IP address.
-Enter gateway address (aaa.bbb.ccc.ddd):
-EOF
- dialog --title "ENTER GATEWAY ADDRESS" --inputbox "`cat $TMP/tempmsg`" \
- 14 64 $GATEWAY 2> $TMP/SeTgate
- if [ $? = 1 -o $? = 255 ]; then
- rm -f $TMP/SeTgate $TMP/tempmsg
- exit
- fi
- GATEWAY="`cat $TMP/SeTgate`"
- rm -f $TMP/SeTgate $TMP/tempmsg
- if [ "$GATEWAY" = "" ]; then
- echo > $TMP/SeTgateway
- break;
- fi
- syntax_check_color $GATEWAY 4 WARN
- if [ $? = 0 ]; then
- echo $GATEWAY > $TMP/SeTgateway
- break;
- fi
- done
+Enter IPv6 gateway address:" 14 68 $GATEWAY6 2> $TMP/SeTgate6
+ if [ $? = 1 -o $? = 255 ]; then
+ rm -f $TMP/SeTgate6
+ exit
+ fi
+ GATEWAY6="`cat $TMP/SeTgate6`"
+ rm -f $TMP/6SeTgate6
+ if [ "$GATEWAY6" = "" ]; then
+ echo > $TMP/SeTgateway6
+ break 2
+ fi
+ # We can only do a basic validation of the entered address
+ # as regexes for IPv6 addresses are very complex.
+ if echo "$GATEWAY6" | grep -E "^[0-9a-fA-F:]+$" >/dev/null; then
+ echo $GATEWAY6 > $TMP/SeTgateway6
+ break 2
+ else
+ dialog --title "INVALID IP ADDRESS" --msgbox \
+"The IP address you entered is not valid.
+Please enter a valid IPv6 address." 6 44
+ continue
+ fi
+ echo $GATEWAY6 > $TMP/SeTgateway6
+ done
+ fi
+ done
fi
if [ "$LOOPBACK" = "no" ]; then
- dialog --title "USE A NAMESERVER?" --yesno "Will you be accessing a \
-nameserver?" 5 42
+ dialog --title "USE A NAMESERVER?" --yesno "Do you wish to configure \
+a nameserver?" 5 42
if [ $? = 0 ]; then
- if [ ! "`cat $TMP/SeTns 2> /dev/null`" = "" ]; then
- DNSSAMPLE="`cat $TMP/SeTns 2> /dev/null`"
- elif [ "$GATEWAY" = "" ]; then
- DNSSAMPLE=`echo $IPADDR | cut -f 1-3 -d .`
- else
- DNSSAMPLE=$GATEWAY
+ if [ ! "$IPADDR" = "" ]; then
+ if [ ! "$GATEWAY" = "" ]; then
+ DNSSAMPLE="$GATEWAY"
+ DNSDEFAULT="$GATEWAY"
+ else
+ DNSSAMPLE="`echo $IPADDR | cut -f 1-3 -d .`.1"
+ fi
+ fi
+ if [ ! "$IPADDR6" = "" ]; then
+ if [ ! "$GATEWAY6" = "" ]; then
+ DNSSAMPLE="$DNSSAMPLE or $GATEWAY6"
+ # Keep the v4 nameserver the default, for now.
+ # DNSDEFAULT="$GATEWAY6"
+ else
+ DNSSAMPLE="or fe80:426c:ffff::1"
+ fi
fi
while [ "$NAMESERVER" = "" ]; do
- cat << EOF > $TMP/tempmsg
-Here is your current IP address, full hostname, and base hostname:
-$IPADDR $HOSTNM.$DOMAIN $HOSTNM
+ dialog --title "ENTER NAMESERVER IP ADDRESS" --inputbox \
+"Please give the IP address of the name server to use, such as
+ $DNSSAMPLE
+You can add more Domain Name Servers later by editing
+ /$RESOLV.
-Please give the IP address of the name server to use,
-such as $DNSSAMPLE.
-
-You can add more Domain Name Servers later by editing /$RESOLV.
-
-Primary name server to use (aaa.bbb.ccc.ddd):
-EOF
- dialog --title "SELECT NAMESERVER" --inputbox \
-"`cat $TMP/tempmsg`" 17 72 $DNSSAMPLE 2> $TMP/SeTns
+Primary name server to use:" 13 65 $DNSDEFAULT 2> $TMP/SeTns
if [ $? = 1 -o $? = 255 ]; then
- rm -f $TMP/tempmsg $TMP/SeTns
+ rm -f $TMP/SeTns
break
fi
NAMESERVER="`cat $TMP/SeTns`"
- rm -f $TMP/tempmsg $TMP/SeTns
+ rm -f $TMP/SeTns
done
fi
fi
@@ -749,7 +889,7 @@ system is now configured to use loopback:
IP address: 127.0.0.1
Netmask: 255.255.255.0
-Is this correct? Press 'Yes' to continue, or 'No' to reconfigure." 0 0
+Is this correct? Press 'Yes' to continue, or 'No' to reconfigure." 10 70
RETVAL=$?
elif [ "$LOOPBACK" = "yes" -a "$NETWORKMANAGER" = "yes" ]; then
dialog --title "NETWORK SETUP COMPLETE" --yesno "Your networking \
@@ -758,24 +898,29 @@ wired and wireless network management. To set up wireless networks
and view status, add the Network Management control panel widget to
your KDE desktop.
-Is this correct? Press 'Yes' to confirm, or 'No' to reconfigure." 0 0
+Is this correct? Press 'Yes' to confirm, or 'No' to reconfigure." 10 71
RETVAL=$?
-elif [ "$USE_DHCP" = "" ]; then
+elif [ "$USE_SLAAC" = "yes" ]; then
+ dialog --title "NETWORK SETUP COMPLETE" --yesno \
+"Your system is now set up to autoconfigure an IPv6 IP address.
+If this is correct, hit 'Yes' to confirm, or 'No' to cancel." 6 66
+RETVAL=$?
+elif [ "$USE_DHCP" = "" -a "$USE_DHCP6" = "" ]; then
while [ 0 ]; do
dialog --title "CONFIRM NETWORK SETUP" \
---ok-label Accept \
---extra-label Edit \
---cancel-label Restart \
---inputmenu \
+--ok-label Accept --extra-label Edit --cancel-label Restart --inputmenu \
"These are the settings you have entered. To accept them and complete \
-the networking setup, press enter. If you need to make any changes, you \
-can do that now (or reconfigure later using 'netconfig')." \
-22 60 12 \
+the networking setup, press ENTER. If you need to make any changes, you \
+can do that now using 'Edit' (or reconfigure later using 'netconfig')." \
+24 75 15 \
"Hostname:" "$HOSTNM" \
-"Domain name:" "$DOMAIN" \
-"IP address:" "$IPADDR" \
-"Netmask:" "$NETMASK" \
-"Gateway:" "$GATEWAY" \
+"Domain Name:" "$DOMAIN" \
+"IPv4 Address:" "$IPADDR" \
+"IPv4 Netmask:" "$NETMASK" \
+"IPv4 Gateway:" "$GATEWAY" \
+"IPv6 Address:" "$IPADDR6" \
+"IPv6 Prefix:" "$PREFIX6" \
+"IPv6 Gateway:" "$GATEWAY6" \
"Nameserver:" "$NAMESERVER" 2> $TMP/tempmsg
RETVAL=$?
if [ "$RETVAL" = "3" ]; then
@@ -783,14 +928,20 @@ can do that now (or reconfigure later using 'netconfig')." \
NEWVAL=`cat $TMP/tempmsg | cut -f 2 -d : | cut -f 2- -d ' '`
if [ "$FIELD" = "Hostname" ]; then
HOSTNM=$NEWVAL
- elif [ "$FIELD" = "Domain name" ]; then
+ elif [ "$FIELD" = "Domain Name" ]; then
DOMAIN=$NEWVAL
- elif [ "$FIELD" = "IP address" ]; then
+ elif [ "$FIELD" = "IPv4 Address" ]; then
IPADDR=$NEWVAL
- elif [ "$FIELD" = "Netmask" ]; then
+ elif [ "$FIELD" = "IPv4 Netmask" ]; then
NETMASK=$NEWVAL
- elif [ "$FIELD" = "Gateway" ]; then
+ elif [ "$FIELD" = "IPv4 Gateway" ]; then
GATEWAY=$NEWVAL
+ elif [ "$FIELD" = "IPv6 Address" ]; then
+ IPADDR6=$NEWVAL
+ elif [ "$FIELD" = "IPv6 Prefix" ]; then
+ PREFIX6=$NEWVAL
+ elif [ "$FIELD" = "IPv6 Gateway" ]; then
+ GATEWAY6=$NEWVAL
elif [ "$FIELD" = "Nameserver" ]; then
NAMESERVER=$NEWVAL
fi
@@ -799,17 +950,18 @@ can do that now (or reconfigure later using 'netconfig')." \
fi
done
else # DHCP was used
- dialog --title "CONFIRM SETUP COMPLETE" \
+ dialog --title "CONFIRM NETWORK SETUP" \
--yesno "Your networking system is now configured to use DHCP:
- Hostname: $HOSTNM
+ Hostname: $HOSTNM
Domain name: $DOMAIN
- IP address: (use DHCP server)
- Netmask: (use DHCP server)
- Gateway: (use DHCP server)
- Nameserver: (use DHCP server)
+ DHCP hostname: $DHCP_HOSTNAME
+ IP addresses: (use DHCP server)
+ Netmask & Prefix: (use DHCP server)
+ Gateways: (use DHCP server)
+ Nameserver: (use DHCP server)
-Is this correct? Press 'Yes' to continue, or 'No' to reconfigure." 0 0
+Is this correct? Press 'Yes' to continue, or 'No' to reconfigure." 15 76
RETVAL=$?
fi
@@ -834,4 +986,3 @@ else
fi
exit $RETVAL
-