IPv6地址获取方式及对应的CentOS服务器搭建
nanshan 2024-10-12 05:39 53 浏览 0 评论
IPv6终端地址获取的方法有四种:
- 静态地址配置: 与IPv4一样,指定终端的IPv6地址,掩码(prefix)和网关地址等
- 无状态自动地址配置(SLAAC): 终端上线后发起RS(Router Solicitation), 链路内(与IPv4子网概念相同)的路由器收到请求后发送RA(Router Advertisements)给终端,使其能自动配置地址。
- DHCPv6地址分配:只用DHCPv6 Server进行地址分配
- 自动分配与DHCPv6结合:同时使自动地址配置和DHCPv6地址分配
终端地址获取配置方式依赖于RA报文中的Flags标记位置位情况来定
IPv6用户上线过程解析:
地址自动配置
1. 终端启动后,向链路内所有路由器(目的地址为:FF02::2)发起RS(Router Solicitation)
2. 链路内(与IPv4子网概念相同)的路由器(村长)收到请求后,发送RA(Router Advertisements)
- Flags: 村长的个人爱好(如获取方式---DHCPv6、自动配置,优先级、代理等)
- Router lifetime: 路由器的存活时间Router lifetime(即你多少时间需要到我这里来请安)
- IPv6前缀信息 ICMPv6 OptionType=3 Prefix information: 即咱们属于哪国、哪省、这个村叫什么名字,简单说就是网络号, 小的们拿着这个号后自己在后面加上自己的名字,就是你的IPv6地址(全名), 出门记得报全名
- 链路最大传输单元ICMPv6 OptionType=5 MTU: 咱们这条路上只能跑多大的报文(如1480 bytes),不允许超载,自觉遵守,否则后果自负。
- 链路地址ICMPv6 OptionType=1 Source link-layer addresss: 最后告诉你村长我的小名叫什么, 有事儿私聊----爷们儿走开!
3. 根据前缀生成地址子网通告: 除去本地链路地址(FE80开头),终端还有两个根据Prefix生成的地址(一个是主用,一个是临时用), 生成后,需要站在村里最高的地方吼一嗓子,咱以后就叫王二麻子了,没人争,这个地址就是你用了。
4. 通告路由器自己的新地址:当两个地址都没人争后,麻溜地跑到村长那里去注册(可能村里不止村长一个人能出去,书记也是可以的):村长啊,我准备用王二麻子作为艺名,找几个笔友,发展成老婆,以后有给王二麻子的信,记得转交我哦
DHCPv6地址分配
1. 终端上线后,发起RS(Router Solicitation)
2. 路由器回复RA, flags中Managed address configuration标记位置位
3. 终端按照自动地址配置,获得两个自动配置地址
4. 终端发起组播DHCPv6请求(Solicit)
5. DHCPv6 Server通告自己的存在并分配地址(相当于DHCP Offer)
6. 终端发起Request(我就用这个地址了哈,DHCPv6 Server回应relpy(是的)
7. 终端同样的需要将该地址通告村长
Server IPv6基本配置:
网络配置
vim /etc/sysctl.conf
输入
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.all.forwarding = 1
参数参数设置
vim /etc/sysconfig/network
输入
NETWORKING_IPV6=yes
IPV6FORWARDING=yes
HOSTNAME=testserver
ONBOOT=yes
接口配置文件
vim /etc/sysconfig/network-scripts/ifcfg-br1
输入
IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6ADDR=2020:102:101:1::1/64
IPV6FORWARDING=yes
IPV6_FAILURE_FATAL=no
IPV6_PEERROUTES=yes
自动地址配置
安装radvd
yum -y install radvd
配置radvd
cat /etc/radvd.conf
interface br1
{
AdvManagedFlag off;? #off为自动地址配置,on为DHCPv6地址分配
??? AdvSendAdvert on;
??? AdvOtherConfigFlag off;? #off为自动地址配置,on为DHCPv6地址分配
??? AdvLinkMTU 1480;
??? MinRtrAdvInterval 30;
??? MaxRtrAdvInterval 100;
??? prefix 2020:102:101:1::/64
??? {
??????? AdvOnLink on;
??????? AdvAutonomous on;
??????? AdvRouterAddr on;
??? };
};
启动服务
systemctl start radvd.service
systemctl enable radvd.service??
终端后的地址后,在CentOS Server上通过ip -6 neighbor show查看IPv6 邻居缓存
通过ping6查看邻居连通性(注意终端防火墙配置允许ICMPv6)
DHCPv6安装和配置
DHCPv6允许更加灵活的配置方式和更多的参数下发。
DHCP Server安装
[root@172-12-0-100 ~]# yum install dhcp
修改radvd配置文件中两个参数:
AdvManagedFlag on;
AdvOtherConfigFlag on;
保存后,重启服务:
systemctl restart radvd.service
配置dhcpv6
vim /etc/dhcp/dhcpd6.conf
输入
default-lease-time 604800;
preferred-lifetime 604800;
option dhcp-renewal-time 1800;
option dhcp-rebinding-time 3600;
allow leasequery;
option dhcp6.name-servers 2020:102:101:1::1;
option dhcp6.domain-search "testserver";
option dhcp6.preference 255;
option dhcp6.rapid-commit;
option dhcp6.info-refresh-time 21600;
dhcpv6-lease-file-name "/var/lib/dhcpd/dhcpd6.leases";
?subnet6 2020:102:101:1::/64 {
??? range6 2020:102:101:1::100 2020:102:101:1::200;
}
启用服务
systemctl enable dhcpd6
systemctl start dhcpd6
注意需要开启udp 547端口,否则DHCPv6报文无法到达Server上层
firewall-cmd --add-port=547/udp –permanent
firewall-cmd –reload
终端上线获得地址后,可在Server的lease记录中查到
Window下查看IPv6邻居
netsh interface ipv6 show neighbor
配置IPv6 DNS Server
yum install bind
确认配置中开启ipv6接口监听
cat /etc/named.conf
启动服务
systemctl enable named
systemctl start named
放开防火墙端口
firewall-cmd --add-port=53/udp –permanent
firewall-cmd –reload
相关推荐
- 0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)
-
文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...
- ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes
-
为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...
- 生产环境starrocks 3.1存算一体集群部署
-
集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...
- 在CentOS上添加swap虚拟内存并设置优先级
-
现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...
- 国产深度(deepin)操作系统优化指南
-
1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...
- postgresql-15.4 多节点主从(读写分离)
-
1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...
- Docker 容器 Java 服务内存与 GC 优化实施方案
-
一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...
- 虚拟内存设置、解决linux内存不够问题
-
虚拟内存设置(解决linux内存不够情况)背景介绍 Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...
- Elasticsearch性能调优(5):服务器配置选择
-
在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...
- Es如何落地
-
一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...
- 针对Linux内存管理知识学习总结
-
现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...
- MySQL进阶之性能优化
-
概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...
- Linux Cgroups(Control Groups)原理
-
LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...
- linux 常用性能优化参数及理解
-
1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...
- 如何在 Linux 中使用 Sysctl 命令?
-
sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)