1. 配置准备

1. 准备一台服务器,保证此服务器所在的IPV6网段和目的服务器在同一个网段

2. 安装好K3S软件

1.1. 配置cni及容器内IPV6地址

我们称此步骤的服务器为:服务器A

K3S现在是用网桥连通容器和宿主机,网桥所在的网卡为cni0。(如果是用docker命令直接起的容器,网卡为docker0)

Cni作为中转网卡,需要注意:

  1. 它的IPV6以及IPV4网段均不能跟实际网卡的网段相同
  2. 容器内的IPV4,IPV6网段需与cni网段相同

接下来以一个实际例子为例。当前有一台通用服务器,配置前网卡信息如下:

1.1.1. 配置cni以及容器IPV6

  1. 将CNI的IPV6网段改成fe81::/64,使其与实际网卡不同,用于与实际网卡的fe80::/64通

删除原有IPV6:ip -6 addr del fe80::8c0c:56ff:fe8e:c447/64 dev cni0

增加新的IPV6:ip -6 addr add fe81::8c0c:56ff:fe8e:c447/64 dev cni0

2. 增加CNI的IPV6网段2017:8:40:96::/64,用于与实际网卡的2016:8:40:96::/64通

ip -6 addr add 2017:8:40:96:c11::98/64 dev cni0

3. 配置容器IPV6

进入容器

(1) 打开IPV6开关:

修改/etc/sysctl.conf文件,增加

net.ipv6.conf.eth0.disable_ipv6 = 0

net.ipv6.conf.lo.disable_ipv6 = 0

运行sysctl –p生效

(2)将eth0的fe80::/64段的IPV6改成与cni同网段

验证与cni的IPV6是否通:ping6 fe81::8c0c:56ff:fe8e:c447

(3)增加2017:8:40:96::/64段的地址,用于与cni的2017:8:40:96::/64段通

ip -6 addr add 2017:8:40:96:c11::99/64 dev eth0

验证连通性:

4. 容器内配置IPV6路由

查看路由命令: ip -6 route show

配置完IP后的路由为:

要和实际网卡通,就要加两条实际网卡IPV6的路由,用cni的IP为网关:

ip -6 route add fe80::/64 via fe81::8c0c:56ff:fe8e:c447 dev eth0

ip -6 route add 2016:8:40:96::/64 via 2017:8:40:96:c11::98 dev eth0

此时宿主机的路由为:

测试与实际网卡IPV6连通性:

1.1.2. 配置跨服务器路由

经过以上步骤,服务器A容器内部与宿主机已经通了。现在要配置跨服务器的网络通。

在我的测试环境中,跨服务器的IPV6是用2016:8:40:96::/64段通信的。此时,只需要在另一台服务器上配置一条路由,使其能跟2017:8:40:96::/64(cni网段)通,那么就能跟容器通。

我称另一台服务器为:服务器B

所以:在服务器B加一条到2017:8:40:96::/64的路由,网关为服务器A实际网卡的2016:8:40:96::/64段的IPV6地址:

注意:服务器A、B的IPV6要在同一局域网内

2. 遇到的问题

  1. SIOCSIFADDR: Permission denied问题

这是未打开IPV6权限,参考1.1.1中的第一步

K3S配置IPV6环境相关推荐

  1. Linux配置ipv6环境

    Linux配置ipv6环境 一.检查linux是否开启了ipv6:ifconfig 如果有ipv6字样,则是开启了,如果没有的话看下一步 二.开启ipv6 1.b编辑sysctl.conf 文件,路径 ...

  2. linux配置ipv6环境,Linux下修改IPV6地址

    如上图所示,eth0有IPV6地址.那如何修改它的IPV6地址,通过函数 #include #include #include #include #include #include #include ...

  3. 各数据库远程连接及ipv6环境配置

    这里写目录标题 1. oracle服务 1.1 Ipv4监听服务 1.2 Ipv6监听服务 1.3 密码过期问题 2. mysql 参考文章: windows环境下部分数据库的IPV6环境配置:htt ...

  4. 【转】Ceph对象存储(rgw)的IPv6环境配置

    引言 在搭建成功Ceph集群后,对于如何使用,其实我还是一脸MB的,心想竟然提供三种存储接口(对象,文件,快),口气也未免太大.在结合项目需求之后,我选择了对象存储接口.那么问题又来了,如何配置IPv ...

  5. Ceph对象存储(rgw)的IPv6环境配置

    本文作者: lemon 本文链接: https://lemon2013.github.io/2016/11/09/Ceph对象存储-rgw-IPv6环境配置/ 版权声明: 本博客所有文章除特别声明外, ...

  6. ENGINEER 003:配置IPv6地址

    配置IPv6地址    (简单)---不再玩ipv4了 IPv4和IPv6的区别? Ipv4不够用了,就推行Ipv6.IPv6迟迟没有得到推广? IPv4有个技术叫nat,地址转换,最大化节约了IP地 ...

  7. 【MySQL】在centos7 纯IPv6环境下,安装mysql5.7

    参考链接:https://mirrors6.tuna.tsinghua.edu.cn/help/mysql/ 服务器环境: Centos7 纯IPv6环境(不能与IPv4互通) 按照 https:// ...

  8. 简要安装FreeBSD 6.2及配置桌面环境[zz]

    简要安装FreeBSD 6.2及配置桌面环境[zz]June 25th, 2007 这里的安装过程其实也很简单,在这里我不打算讲解虚拟机 vmware 上的安装(因为和实际的环境相差不大.同时,这个安 ...

  9. linux远程连接 ipv6,Ansible 配置 IPv6 连接

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 背景 平时工作中因为通常需要远程操作较多 Linux 环境,引入了 Ansible,但是大都是通过 Ansible 远程 ...

  10. 如何通过路由器部署IPv6环境(上篇)

    本文详细描述如何利用家用路由器,结合6Plat公共IPv6接入平台,为家庭网络接入IPv6环境,实现家庭全终端(PC.Pad.Phone等)进入IPv6世界. 本文分为上下两篇,分别针对"具 ...

最新文章

  1. c# 说说开发通用通信库,尤其是分布式服务的通信
  2. 使用显式Intent向下一个活动传递数据
  3. python 自然语言处理 (六) 采用deepQA搭建自动聊天机器人
  4. 普及组模板——线性筛素数
  5. 阿里云:助力数字经济新基建,打造物联网安全基石
  6. vue 前期准备,项目结构
  7. pillow是python的图像处理标准库_详解Python图像处理库Pillow常用使用方法
  8. 单片机应用中的c语言用词注解,单片机C语言程序注解
  9. 【POI1999codevs3634】积水,关于sunshine爷的NOIP(suan)水(ge)题(pi)赛
  10. 日志读取_实时数仓之Maxwell读取MySQL binlog日志
  11. cfree——好用的c语言编辑器(附注册码)
  12. Oracle数据库的ORA-00257故障解决过程(转载)
  13. java动态数组大总结
  14. 大众点评有多少用户2019_2019全国大众点评网数据下载获取
  15. 四六级阅读难点--选词填空题的一般解题思路
  16. 4、计算矩阵A的平方
  17. 用手机把纸质文件扫描成pdf的方法分享,不能错过哦。
  18. CAN总线电容过大的有效解决方法
  19. python自动化开发-[第十五天]-jquery
  20. 手机的imei号的获取

热门文章

  1. 51nod1212无向图最小生成树
  2. matlab手动抠图,MATLAB可视化手动抠图
  3. android版本迅雷下载,迅雷Android 2.10.2版 说好的删除迅雷7下载记录来了
  4. 使用python+ffmpeg批量将ts文件转为mp4
  5. java:123321是一个非常特殊的数,它从左边读和从右边读是一样的。   输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
  6. 第13期-在线的文章摘要生成器, 自己写了一个支持中文的
  7. Excel ActiveX组合框项目选择宏
  8. 正则表达式 REGEX-Regular Expression
  9. 新装MySql后登录出现root帐号提示mysql ERROR 1045 (28000): Access denied for use的解决办法
  10. 第四章 结构化程序设计