enable-ipv6.sh 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #!/bin/sh
  2. GREEN='\033[0;32m'
  3. ORANGE='\033[0;33m'
  4. BLUE='\033[0;34m'
  5. RED='\033[0;31m'
  6. CYAN='\033[0;36m'
  7. NC='\033[0m' # No Color
  8. eecho() {
  9. echo -e "${GREEN}$1${NC}"
  10. }
  11. # centos 7
  12. eecho "Getting IPv6 ..."
  13. IP6=$(curl -6 -s icanhazip.com -m 10)
  14. if [[ $IP6 != *:* ]]; then
  15. IP6=
  16. fi
  17. if [ ! -n "$IP6" ]; then
  18. eecho "IPv6 = ${IP6}"
  19. echo -e "${RED}IPv6 Already Enbaled!${NC}"
  20. exit
  21. fi
  22. while [ ! -n "$ETHNAME" ]; do
  23. eecho "Please input network interface name: (eth0 as default)"
  24. read ETHNAME
  25. if [[ $ETHNAME == "" ]]; then
  26. ETHNAME="eth0"
  27. fi
  28. done
  29. while [ ! -n "$ADDR" ]; do
  30. eecho "Please input ipv6 address: "
  31. read ADDR
  32. done
  33. while [ ! -n "$GW" ]; do
  34. eecho "Please input ipv6 gateway address: "
  35. read GW
  36. done
  37. sed -i '/^NETWORKING_IPV6/d' /etc/sysconfig/network && echo 'NETWORKING_IPV6=yes' >> /etc/sysconfig/network
  38. IFCFGFILE=/etc/sysconfig/network-scripts/ifcfg-$ETHNAME
  39. sed -i '/^IPV6INIT/d' $IFCFGFILE && echo 'IPV6INIT=yes' >> $IFCFGFILE
  40. sed -i '/^IPV6ADDR/d' $IFCFGFILE && echo "IPV6ADDR=$ADDR" >> $IFCFGFILE
  41. sed -i '/^IPV6_DEFAULTGW/d' $IFCFGFILE && echo "IPV6_DEFAULTGW=$GW" >> $IFCFGFILE
  42. systemctl restart network
  43. eecho "IPv6 Enabled."
  44. eecho "Getting IPv6 ..."
  45. IP6=$(curl -6 -s icanhazip.com -m 10)
  46. if [[ $IP6 != *:* ]]; then
  47. IP6=
  48. fi
  49. eecho "IPv6 = ${IP6}"