搭建ipv6有状态dhcp服务器,Centos 7下IPV6 有状态DHCPV6配置

yum源安装kea

yum install epel-release

yum install kea

DEMON

ps aux| grep kea

rpm -qa kea

查看dhcpv6默认配置

cat /etc/kea/kea.conf

启动kea-dhcpv6并查看kea启动过程

systemctl start kea-dhcp6

systemctl status kea-dhcp6

systemctl -l status kea-dhcp6

通过tcpdump查看服务器数据包交互过程

tcpdump -i eth0 -w dhcp6.pcap

关闭防火墙

systemctl stop firewalld.service

注意:必须要关闭防火墙否则造成dhcpv6分配地址无法下发。

用到的文件:

/var/lib/kea/kea-leases6.csv 默认情况下存放ipv6地址以及终端的设备信息,可查看到域账号mac地址等信息。

/var/log/kea-dhcp6.log 我开的debug模式。可查看dhcp6运行状态的日志。

Centos 7 修改dns

修改/etc/NetworkManager/NetworkManager.conf

[main]

plugins=ifcfg-rh

dns=none

手工修改 /etc/resolv.conf

nameserver 114.114.114.114

nameserver 8.8.8.8

服务器网卡静态ipv6配置:

[root@localhost kea]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736

TYPE=Ethernet

BOOTPROTO=static

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=no

IPV6_DEFROUTE=yes

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

NAME=eno16777736

UUID=03b35ca7-4678-48ca-ab46-5782367cd56a

DEVICE=eno16777736

ONBOOT=yes

IPADDR=X.X.X.X

GATEWAY=X.X.X.X

NETMASK=X.X.X.X

IPVADDR=2001:da8:XXXX:XXXX:24::125

IPV6_DEFAULTGW=2001:da8:XXXX:XXXX:24::1

IPV6ADDR=2001:da8:XXXX:XXXX:24::125/80

kea-dhcpv6 配置:

{

"Dhcp6":

{

# Add names of interfaces to listen on.

"interfaces-config": {

"interfaces": ["eno16777736/2001:da8:XXXX:XXXX:24:aefd:ddb0:7d02"]

},

"option-data": [{"name": "unicast","data": "2001:da8:XXXX:XXXX:24:aefd:ddb0:7d02"} ],

# Use Memfile lease database backend to store leases in a CSV file.

# Setup reclamation of the expired leases and leases affinity.

# Expired leases will be reclaimed every 10 seconds. Every 25

# seconds reclaimed leases,which have expired more than 3600

# seconds ago,will be removed. The limits for leases reclamation

# are 100 leases or 250 ms for a single cycle. A warning message

# will be logged if there are still expired leases in the

# database after 5 consecutive reclamation cycles.

# "expired-leases-processing": {

# "reclaim-timer-wait-time": 10,

# "flush-reclaimed-timer-wait-time": 25,

# "hold-reclaimed-time": 3600,

# "max-reclaim-leases": 100,

# "max-reclaim-time": 250,

# "unwarned-reclaim-cycles": 5

# },

# Addresses will be assigned with preferred and valid lifetimes

# being 3000 and 4000,respectively. Client is told to start

# renewing after 1000 seconds. If the server does not respond

# after 2000 seconds since the lease was granted,client is supposed

# to start REBIND procedure (emergency renewal that allows switching

# to a different server).

"preferred-lifetime": 3000,

"valid-lifetime": 4000,

"renew-timer": 1000,

"rebind-timer": 2000,

# The following list defines subnets. Uncomment to enable them.

"subnet6": [

{ "subnet": "2001:da8:XXXX:XXXX:25::/80",

"pools": [ { "pool": "2001:da8:XXXX:XXXX:25::/80" } ],

"interface-id":"vlan25"

},

{ "subnet": "2001:da8:XXXX:XXXX:26::/80",

"pools": [ { "pool": "2001:da8:XXXX:XXXX:26::/80" } ],

"interface-id":"vlan26"

},

# { "subnet": "2001:db8:3::/64",

# "pools": [ { "pool": "2001:db8:3::/80" } ] },

# { "subnet": "2001:db8:4::/64",

# "pools": [ { "pool": "2001:db8:4::/80" } ] }

]

},

# DHCP DDNS configuration starts here.

# Logging configuration starts here. It tells Kea servers to store

# all log messages (on severity INFO or more) in a file.

# debuglevel variable is used on DEBUG level only.

"Logging":

{

"loggers": [

{

"name": "kea-dhcp4",

"output_options": [

{

"output": "/var/log/kea-dhcp4.log"

}

],

"severity": "INFO",

"debuglevel": 0

},

{

"name": "kea-dhcp6",

"output_options": [

{

"output": "/var/log/kea-dhcp6.log"

}

],

"severity": "DEBUG",/日志开启到debug级别,可以查看分配的地址信息。

"debuglevel": 99

},

{

"name": "kea-dhcp-ddns",

"output_options": [

{

"output": "/var/log/kea-ddns.log"

}

],

"debuglevel": 0

}

]

}

}

如果自己网段内需要dhcpv6服务 需开通以下:

[root@localhost kea]# cat /etc/kea/kea.conf

# This is a basic configuration for the Kea DHCPv4 and DHCPv6 servers.

# Subnet declarations are commented out and no interfaces are listed.

# Therefore,the servers will not listen or respond to any queries.

# The basic configuration must be extended to specify interfaces on

# which the servers should listen. Also,subnets and options must be

# declared.

{

# DHCPv4 configuration starts here.

#"Dhcp4":

#{

# Add names of interfaces to listen on.

# "interfaces-config": {

# "interfaces": [ ]

# },

# Use Memfile lease database backend to store leases in a CSV file.

# "lease-database": {

# "type": "memfile"

# },

# Setup reclamation of the expired leases and leases affinity.

# Expired leases will be reclaimed every 10 seconds. Every 25

# seconds reclaimed leases,

# Global (inherited by all subnets) lease lifetime is mandatory parameter.

# "valid-lifetime": 4000,

# Below an example of the simple subnet declaration. Uncomment to

# enable it. This is a list,denoted with [ ],of structure,denoted

# with { }. Each structure describes a single subnet and may have

# several parameters. One of those parameters is "pools" that is

# also a list of structures.

# "subnet4": [

# { "subnet": "192.0.2.0/24",

# "pools": [ { "pool": "192.0.2.1 - 192.0.2.200" } ] }

# ]

#},

# DHCPv6 configuration starts here.

"Dhcp6":

{

# Add names of interfaces to listen on.

"interfaces-config": {

"interfaces": ["eno16777736/2001:da8:XXXX:XXXX:24::125"]

},"data": "2001:da8:XXXX:XXXX:24::125"} ],

{ "subnet": "2001:da8:XXXX:XXXX:24::/80",

"pools": [ { "pool": "2001:da8:XXXX:XXXX:24::/80" } ],

"interface":"eno16777736"

},

{ "subnet": "2001:da8:XXXX:XXXX:26::/80",

"debuglevel": 99

},

"debuglevel": 0

}

]

}

}

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值