dhcp6

所属分类:网络编程
开发工具:C/C++
文件大小:142KB
下载次数:33
上传日期:2011-03-24 19:07:43
上 传 者libanhuaawj
说明:  ipv6 dhcp的源码实现,经过测试,包括客户端与服务端
(ipv6 dhch )

文件列表:
client6_addr.c (23883, 2007-08-20)
client6_parse.y (8286, 2007-08-20)
client6_token.l (6344, 2007-08-20)
common.c (49854, 2007-08-20)
common.h (4960, 2007-08-20)
config.c (16191, 2007-08-20)
config.h (8951, 2007-08-20)
COPYING.LIB (26436, 2008-03-11)
dad_token.l (5470, 2007-08-20)
dhcp6.h (8805, 2007-08-20)
dhcp6c.c (51030, 2007-10-25)
dhcp6c.conf (112, 2007-08-31)
dhcp6relay.c (19462, 2007-08-20)
dhcp6s.c (29215, 2007-10-25)
dhcp6s.conf (330, 2007-10-25)
hash.c (5591, 2007-08-20)
hash.h (2840, 2007-08-20)
ifaddrs.c (20918, 2007-08-20)
ifaddrs.h (2157, 2007-08-20)
lease.c (12743, 2007-08-20)
lease.h (5441, 2007-10-25)
lease_token.l (15453, 2007-08-20)
LICENSE (8981, 2008-03-11)
Makefile (2959, 2007-10-29)
netlink.c (9668, 2007-08-20)
queue.h (17092, 2007-08-20)
radvd_token.l (9881, 2007-08-20)
ra_token.l (4493, 2007-08-20)
resolv_token.l (9705, 2007-08-20)
server6_addr.c (30006, 2007-08-20)
server6_conf.c (8906, 2007-08-20)
server6_conf.h (5088, 2007-08-20)
server6_parse.y (20887, 2007-08-20)
server6_token.l (5238, 2007-08-20)
strlcat.c (2709, 2007-08-20)
strlcpy.c (2643, 2007-08-20)
timer.c (5417, 2007-08-20)
timer.h (2737, 2007-08-20)

/* Author: Shirley Ma, xma@us.ibm.com */ DHCPv6 is a stateful address autoconfiguration protocol for IPv6, a counterpart to IPv6 stateless address autoconfiguration protocol. It can either be used independently or it can coexist with its counterpart protocol. This protocol uses client/server mode of operation but can also provide support through a Relay Agent. It is currently being defined by IETF DHC WG and the specification is still in the draft form. This protocol is intended to support on IPv6 based networks only. For specific details of the protocol, refer to the draft specification available at IETF. The ultimate goal of this project is to provide a protocol conformant implementation for Linux. The current implementation will slowly evolve to support per the current draft and ultimately to the proposed standard when it comes out of IETF. Current Implementation status: This implementation supports IPv6 address assignment to the clients. It also has the support for prefix delegation, DNS server updates but those features are not validated yet. The server also supports messages sent through relay agents, both inbound and outbound. The Linux implementation is based upon KAME's DHCPv6 implementation on BSD which lacked the support for dynamic address assignment feature, now supported in Linux. A. Validated Features: IPv6 address Assignment & Prefix Delegation 1. Server configuration file support for both static and dynamic assignments. 2. Server lease file support for saving all the client's IPv6 address binding info. 3. Client IPv6 address assignment and temporary IPv6 address assignment support on the same link. 4. Supported Options: Rapid commit, Server Preference, Information Request, Unicast, Elapsed Time, ClientID, ServerID, IA_NA, IA_TA, IA_ADDR, IA_PD, Status, Relay Message, Interface Identifier. 5. Solicit/Request/Advertise/Reply/Infomation-request messages/Renew/Rebind/Release/Confirm/ messages support for IPv6 address binding. 8. Client configuration file support for IPv6 address assignment. 9. Client lease file support for saving individual client ipv6address binding info. 10. DNS server update support according to draft-ietf-dhc-dhcpv6-opt-dnsconfig-03.txt. 11. Prefix delegation support according to draft-ietf-dhc-dhcpv6-opt-prefix-delegation-03.txt 12. radvd.conf update and radvd reload for prefix delegation B. Support available but not validated yet 1. Request option support 2. Relay-Forw/Relay-Repl messages and Relay Message Option C. ToDo List: 1. Authentication/User class/Vendor class/Interface-ID option support 2. Reconfig message support. D. INSTALLATTION/DEVELOPMENT: 1. tar -xvzf dhcpv6-VERSION.tar.gz 2. ./configure [options] 3. make && make install 4. insmod ipv6 (if ipv6 is not compiled in the kernel) 5. mkdir /var/db/dhcpv6 (create dhcpv6 database directory) 6. edit /etc/dhcp6c.conf (copy client configuration file from source) 7. edit /etc/dhcp6s.conf (copy server configuration file from source) 8. ./dhcp6s -dDf [eth0 eth1 ...] (start server, turn on debug) 9. ./dhcp6c -dDf eth0 (start client, turn on debug)

近期下载者

相关文件


收藏者