Centos7下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"

          }

      ],

      "severity": "INFO",

      "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, 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

#  },

# 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"]

  },

  "option-data": [{"name": "unicast","data": "2001:da8:XXXX:XXXX:24::125"} ],

# 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:24::/80",

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

       "interface":"eno16777736"

  },

  {    "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",

      "debuglevel": 99

    },

    {

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

      "output_options": [

          {

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

          }

      ],

      "severity": "INFO",

      "debuglevel": 0

    }

  ]

}

}


新闻标题:Centos7下IPV6有状态DHCPV6配置
文章起源:http://hbruida.cn/article/gidsog.html