您的位置:

Odchpd详细介绍

一、odhcpd介绍

odhcpd是一个开源的DHCPv6协议栈和RA/RS守护进程。它是OpenWrt操作系统中的一部分,用于IPv6网络配置。它提供了IPv6的自动配置,并且可以根据路由器通告(RA)设置IPv6地址,路由和DNS服务器。与其他DHCPv6服务器不同,odhcpd只使用单个Socket处理DHCPv6和RA/RS消息,并使用单个进程来管理所有IPv6接口的配置信息。它的主要优点是使用少量的系统资源,因此在嵌入式系统上非常适合。

二、odhcpd 中文解析问题

odhcpd在解析中文时会出现问题,解决方法是使用IDN(Internationalized Domain Name)进行编码。例如:www.百度.com应该写成www.xn--fiq228c.com。这样odhcpd就可以正确的解析中文域名。

三、odhcpd ipv6

odhcpd支持IPv6地址的自动配置,只需要在OpenWrt操作系统中启用IPv6,odhcpd就可以自动向所有IPv6接口分配IPv6地址。

四、odhcpd-ipv6only

odhcpd-ipv6only可以用于限制odhcpd只分配IPv6地址,并禁用IPv4地址分配。

五、odhcpd wlan0

在odhcpd配置文件中,可以指定odhcpd监听的网络接口。例如,要让odhcpd只监听wlan0接口,可以将以下代码添加到odhcpd配置文件中:

config dhcp 'lan'
        option interface 'wlan0'
        #...

六、odhcpd 拨号上网

设置odhcpd用于拨号上网的第一步是将拨号网络接口纳入odhcpd服务的控制范围。以pppoe拨号作为示例,以下是将拨号接口添加到odhcpd服务的方法:

config dhcp 'wan'
        option dhcpv6 'server'
        option ra 'server'
        option interface 'pppoe-wan'
        option dhcpv4 'server'

七、odhcpd配置wlan

以下是一个odhcpd配置文件的示例,可用于配置wlan:

config dhcp 'lan'
    option interface 'wlan0'
    option start '100'
    option limit '150'
    option leasetime '12h'

在此示例中,odhcpd配置为为wlan0接口分配IP地址,起始地址为100,最大地址为150,租约时间为12小时。

八、odhcpd linux无法获取

如果odhcpd服务无法分配IPv4地址,则可能是由于Linux系统中的dhclient进程已经获取了该地址。在这种情况下,需要终止dhclient进程,然后重新启动odhcpd服务。以下是终止dhclient进程的命令:

killall -9 dhclient

九、odhcpd failed to send to

如果odhcpd服务无法发送DHCPv6与RA/RS消息,可能是由于IPv6防火墙阻止了odhcpd的输出。要解决此问题,请将以下代码添加到OpenWrt /etc/firewall.user文件中:

ip6tables -I INPUT 1 -p udp --dport 547 -j ACCEPT
ip6tables -I INPUT 1 -p udp --dport 546 -j ACCEPT
ip6tables -I OUTPUT 1 -p udp --sport 547 -j ACCEPT
ip6tables -I OUTPUT 1 -p udp --sport 546 -j ACCEPT

此命令允许odhcpd服务的UDP报文流量通过IPv6防火墙。