linux服务器开通ipv6,linux服务器开启IPv6

在国家网信办推行IPv6的大前提下,进行IPv6改造工作,需要对服务器进行配置IPv6地址。

配置过程大致写一下哈:

#cat ipv6.sh#! /bin/bash

Ipv6=$1

Ipv4=$(dig +short $(hostname)) #用于获取对应的网卡,根据需求更改

Time=$(date  +%Y%m%d%H%M%S)

[[ $Ipv6 ]] || echo "ipv6 get fail!,Usage: sh  ipv6.sh X:X:X::ipv6地址"

[[ $Ipv4 ]] || echo "ipv4 get fail!"

echo "变更模块包括:grub配置 sysctl配置 IP配置"

Grub(){

#grub修改

cp /etc/default/grub /etc/default/grub.$Time

cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.$Time

sed -i 's#ipv6.disable=1#ipv6.disable=0#'  /etc/default/grub  || grep 'ipv6.disable' /etc/default/grub

grub2-mkconfig -o /boot/grub2/grub.cfg &>/dev/null

grep 'ipv6.disable=0' /boot/grub2/grub.cfg &>/dev/null && \

echo "###grub ok ###" || echo -e "\033[31m"grub fail !!!!!!!!!!!"\033[0m"

}

Systcl(){

#配置sysctl.conf

cp /etc/sysctl.conf /etc/sysctl.conf.$Time

sed -i '/net.ipv6.conf.all.disable_ipv6/d' /etc/sysctl.conf

sed -i '/net.ipv6.conf.default.disable_ipv6/d' /etc/sysctl.conf

sysctl -p &>/dev/null

grep ipv6 /etc/sysctl.conf &>/dev/null &&\

echo -e "\033[31m sysctl fail !!!!!!!!!!! \033[0m"  || echo "###sysctl ok ###"

}

Ip(){

#IP 配置:

cp /etc/sysconfig/network /etc/sysconfig/network.$Time

grep "NETWORKING=yes" /etc/sysconfig/network &>/dev/null || echo "NETWORKING=yes" >> /etc/sysconfig/network

grep "NETWORKING_IPV6=yes" /etc/sysconfig/network &>/dev/null || echo "NETWORKING_IPV6=yes" >> /etc/sysconfig/network

FileName=$(grep $Ipv4 /etc/sysconfig/network-scripts/* | awk -F':' '{print $1}')

[[ $FileName ]] || cp $FileName $FileName.$Time

[[ $FileName ]] || echo -e "\033[31m get network file fail !!!!!!!!!!! \033[0m"

grep "IPV6INIT=yes"  $FileName &>/dev/null || echo "IPV6INIT=yes" >> $FileName

grep "IPV6_AUTOCONF=no"  $FileName &>/dev/null || echo "IPV6_AUTOCONF=no" >> $FileName

grep "IPV6ADDR="  $FileName &>/dev/null || [[ $FileName ]] && [[ $Ipv6 ]] && \

echo "IPV6ADDR=$Ipv6" >> $FileName

grep 'IPV6' $FileName &>/dev/null && \

echo "###IPconfig ok ###" || echo -e "\033[31m IPconfig fail !!!!!!!!!!! \033[0m"

}

Reboot(){

重启

sync && sync

echo "10s after reoot"

sleep 10

reboot

}

Check(){

echo

echo

echo

echo "=====================IPv6变更有:==================="

echo "=============File : /boot/grub2/grub.cfg"

grep 'ipv6.disable=0' /boot/grub2/grub.cfg

echo

echo "=============File : /etc/sysctl.conf "

grep "ipv6" /etc/sysctl.conf

echo

echo "=============File : /etc/sysconfig/network"

grep "NETWORKING_IPV6=yes" /etc/sysconfig/network

echo

echo "=============File : $FileName"

grep 'IPV6' $FileName

echo

}

Grub

Systcl

Ip

Check

#Reboot

具体的配置过程解析参见:

一:grub修改:

方法一:

#/boot/grub2/grub.cfg

linux16行添加:ipv6.disable=0(0:开启IPV6,1:关闭IPV6)

方法二:

1.编辑/ etc / default / grub并将内核参数ipv6.disable的值从GRUB_CMDLINE_LINUX行中的1更改为0,例如:

# cat /etc/default/grub

GRUB_CMDLINE_LINUX="ipv6.disable=0 crashkernel=auto rhgb quiet"

注意:ipv6.disable = 0是默认值,因此您可以根据需要从GRUB_CMDLINE_LINUX参数列表中删除此参数ipv6.disable。

2.使用下面显示的命令重新生成GRUB配置文件并覆盖现有配置文件。

#grub2-mkconfig -o /boot/grub2/grub.cfg

二:配置sysctl.conf

1.为了让ipv6在线运行,请确保/etc/sysctl.conf中的以下行被注释掉或删除。

#cat /etc/sysctl.conf | grep ipv6

#net.ipv6.conf.all.disable_ipv6 = 1 ###注释/删除此行或将其值从1更改为0

#net.ipv6.conf.default.disable_ipv6 = 1 ###注释/删除此行或将其值从1更改为0

2.使用命令'sysctl -p'重新读取配置文件/etc/sysctl.conf。#sysctl -p

三:重启服务器,加载gurb配置:

验证配置是否生效;ip add

#查看是否有ipv6配置;

centos 6

1.查看服务器是否加载ipv6模块lsmod | grep ipv6

如没有任何回显,则说明没有加载

加载ipv6模块modprobe ipv6

再次运行lsmod | grep ipv6

,如出现回显,则说明ipv6已经正常加载

2.修改配置文件启用ipv6

cat /etc/modprobe.d/ipv6.conf

修改options ipv6 disable=0

3.开启内核参数支持ipv6

执行上述步骤之后,运行如下命令使内核开启ipv6sysctl -w net.ipv6.conf.all.disable_ipv6=0

再次运行sysctl -a | grep ipv6 | grep disable

若参数全部为0,则说明ipv6已经全部支持

4.在网卡上配置ipv6地址

以上配置都完成之后,网卡就可以支持ipv6地址了,启用一个试试吧

四IP配置:

#/etc/sysconfig/network #添加以下两条内容,网关也可以配置在此处;

NETWORKING=yes

NETWORKING_IPV6=yes

sed -i '/^NETWORKING_IPV6=/d' /etc/sysconfig/network

echo "NETWORKING_IPV6=yes" >> /etc/sysconfig/network

#ifcfg-eth0

IPV6INIT=yes

IPV6_AUTOCONF=no

IPV6ADDR=xxx::xxx

IPV6_DEFAULTGW=fe80::1%eth0(eth0为实际网卡名)

关于配置IPv6后续的问题 欢迎阅读另一篇博文:网络双栈情况下优先级问题

因为配置后可能有一些风险需要知悉。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值