<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hola,<div><br></div><div>Les cuento que finalmente logre hacer andar "algun" dhcpv6 server en freebsd.&nbsp;</div><div><br></div><div>Gracias Jorge por la ayuda!</div><div><br></div><div>Lo que hice es lo siguiente:</div><div><br></div><div>1) en rtadvd hay que habilitar la flag "o", para eso en el archivo /etc/rtadvd.conf agragar:</div><div><div>bge1:\</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;:raflags="o":</div><div>2) compile de fuente (no hay puerto) el dhcpd 4.0. Ojo, que solo puede ser o servidor dhcp para v4 o servidor dhcp para v6. Esta instalacion por ahora la tengo en el directorio /root/dhcpd40 (./configure --prefix=/root/dhcpd40)</div><div><br></div><div>3) genere el archivo de configuraion</div></div><div><div># dhcpd.conf</div><div>#</div><div># Sample configuration file for ISC dhcpd</div><div>#</div><div><br></div><div># option definitions common to all supported networks...</div><div>option dhcp6.domain-search "lacnic.net";</div><div>option dhcp6.name-servers 2001:13c7:7001:4224::224,2001:13c7:7001:4225::225;</div><div><br></div><div>default-lease-time 600;</div><div>max-lease-time 7200;</div><div><br></div><div># Use this to enble / disable dynamic dns updates globally.</div><div>#ddns-update-style none;</div><div><br></div><div># If this DHCP server is the official DHCP server for the local</div><div># network, the authoritative directive should be uncommented.</div><div>authoritative;</div><div><br></div><div># Use this to send dhcp log messages to a different log file (you also</div><div># have to hack syslog.conf to complete the redirection).</div><div>#log-facility local7;</div><div>subnet6 2001:13c7:7001:5000::/64 {</div><div>allow unknown-clients;</div><div>}</div><div><br></div><div>4) copie el script de arranque del puerto dhcp (v3) a /usr/local/etc/rc.d/dhcpdv6, cambiando el name por dhcpdv6 y el comando por donde tenia el ejecutable.</div><div>(no queria cambiar el binario que estaba usando hasta ahora para ipv4).</div><div><br></div><div>5) en /etc/rc.conf tengo:</div><div><div># -- Habilito DHCP6 -&nbsp;</div><div>dhcpdv6_enable="YES"</div><div>dhcpdv6_flags="-6 -q"</div><div>dhcpdv6_conf="/root/dhcpd40/etc/dhcpd.conf"</div><div>dhcpdv6_ifaces="bge1"</div><div>dhcpdv6_chuser_enable="NO"</div><div><br></div><div>5) En el firewall del servidor agregue:</div><div><div>"$IPFW" add 14015 set 1 permit log udp from { fe80::/10 or "$VLAN22v6" } 546 to { ff02::1:2 or "$BGE1v6" or fe80::/10 } 547 in via bge1 || exit 1</div><div>y</div><div><div>"$IPFW" add 16030 set 1 permit log udp from { "$BGE1v6" or fe80::/10 } 547 to { "$VLAN22v6" or fe80::/10 } 546 out via bge1 || exit 1</div><div><br></div></div></div><div>y listo...funciona</div><div><br></div><div>r.</div><div><br></div></div><div><br></div><div><br></div><div><br></div><div><br></div></div><div><br></div><div><br><div><div>On Jul 16, 2008, at 2:12 PM, Jorge M. Niedbalski R. wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><br><br><div class="gmail_quote">2008/7/15 Jorge M. Niedbalski R. &lt;<a href="mailto:niedbalski@ip6nw.com">niedbalski@ip6nw.com</a>>:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div dir="ltr">2008/7/15 Roque Gagliano &lt;<a href="mailto:roque@lacnic.net" target="_blank">roque@lacnic.net</a>>:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div><div></div><div class="Wj3C7c"> <div>Hola,<div><br></div><div>Mande esta pregunta al foro de los programadores del wide-dhcp6 pero no me contestaron, a ver si aquí alguien tiene experiencia en el tema y me puede dar una mano.</div><div><br></div> <div>gracias!</div><div>Roque<br><div><br><div>Begin forwarded message:</div><br><blockquote type="cite"><div><div style="margin: 0px;"><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(0, 0, 0);" color="#000000" face="Helvetica" size="3"><b>From: </b></font><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal;" face="Helvetica" size="3">Roque Gagliano &lt;<a href="mailto:roque@lacnic.net" target="_blank">roque@lacnic.net</a>></font></div> <div style="margin: 0px;"><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(0, 0, 0);" color="#000000" face="Helvetica" size="3"><b>Date: </b></font><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal;" face="Helvetica" size="3">July 14, 2008 10:54:22 AM GMT-03:00</font></div> <div style="margin: 0px;"><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(0, 0, 0);" color="#000000" face="Helvetica" size="3"><b>To: </b></font><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal;" face="Helvetica" size="3"><a href="mailto:wide-dhcpv6-developers@lists.sourceforge.net" target="_blank">wide-dhcpv6-developers@lists.sourceforge.net</a></font></div> <div style="margin: 0px;"><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(0, 0, 0);" color="#000000" face="Helvetica" size="3"><b>Subject: </b></font><font style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal;" face="Helvetica" size="3"><b>configuring dhcp6s as a stateless server: transmit reply to fe80::dc93:49bf:da71:d1cd%bge1 failed</b></font></div> <div style="margin: 0px; min-height: 14px;"><br></div> </div><div>-----BEGIN PGP SIGNED MESSAGE-----<br>Hash: SHA1<br><br>Hi,<br><br>I am using a dhcp6s server in a FreeBSD environment just to provide DNS info to clients (I am using stateless autoconf with raflag 0x40). I can see the "DHCP Information Request" from the customers at the server (using tcpdump) and the service up using sockstat but the server is not responding them. I tried to debug but the only message that I get is:<br> <br>Jul 11 17:29:28 fwi dhcp6s[77211]: server6_send: transmit reply to fe80::dc93:49bf:da71:d1cd%bge1 failed<br><br>My configuration file is:<br><br>[root@fwi /usr/local/etc]# more /usr/local/etc/dhcp6s.conf<br># The followings are a sample configuration to provide a DNS server address<br> # for every client as well as to delegate a permanent IPv6 prefix<br># 2001:db8:1111::/48 to a client whose DUID is 00:01:00:01:aa:bb.<br><br>option domain-name-servers 2001:13c7:7001:4224::224;<br>option domain-name-servers 2001:13c7:7001:4225::225;<br> option domain-name "<a href="http://lacnic.net.uy" target="_blank">lacnic.net.uy</a>";<br>[root@fwi /usr/local/etc]#<br><br>[root@fwi ~]# sockstat &nbsp;-6<br>USER &nbsp;&nbsp;&nbsp;&nbsp;COMMAND &nbsp;&nbsp;&nbsp;PID &nbsp;&nbsp;FD PROTO &nbsp;LOCAL ADDRESS &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FOREIGN ADDRESS<br> root &nbsp;&nbsp;&nbsp;&nbsp;dhcp6s &nbsp;&nbsp;&nbsp;&nbsp;88992 5 &nbsp;udp6 &nbsp;&nbsp;*:547 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*:*<br>root &nbsp;&nbsp;&nbsp;&nbsp;dhcp6s &nbsp;&nbsp;&nbsp;&nbsp;88992 6 &nbsp;udp6 &nbsp;&nbsp;*:62256 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*:*<br>root &nbsp;&nbsp;&nbsp;&nbsp;dhcp6s &nbsp;&nbsp;&nbsp;&nbsp;88992 7 &nbsp;tcp6 &nbsp;&nbsp;::1:5547 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*:*<br><br>Do you have any idea of what could be hapenning?<br> <br>thanks for your help,<br>Roque<br>-----BEGIN PGP SIGNATURE-----<br>Version: GnuPG v1.4.8 (Darwin)<br><br>iEYEARECAAYFAkh7Wo8ACgkQnk+WSgHpbO4wugCglpPp4dYsITV7VsjQR9/EhIFg<br>p7cAoNTG3OfsUxXHoLOzITi6sBDVKNj7<br>=J8NM<br> -----END PGP SIGNATURE-----<br></div></blockquote></div><br></div></div><br></div></div>_______________________________________________<br> LACTF mailing list<br> <a href="mailto:LACTF@lacnic.net" target="_blank">LACTF@lacnic.net</a><br> <a href="https://mail.lacnic.net/mailman/listinfo/lactf" target="_blank">https://mail.lacnic.net/mailman/listinfo/lactf</a><br> <br></blockquote></div><br>No utilizo wide-dhcpv6 , pero veamos si te puedo ayudar.<br><br>Donde se genera el error es en :<br><br>error = sendto(s, buf, len, 0, sa, sysdep_sa_len(sa)); /** file common.c **/<br><br>Segun el man sendto(2) , los errores que pueden ser retornados :<br> <br>&nbsp;&nbsp;&nbsp;&nbsp; [EHOSTUNREACH]&nbsp;&nbsp;&nbsp;&nbsp; The remote host was unreachable.<br>&nbsp;&nbsp;&nbsp;&nbsp; [EISCONN]&nbsp; A destination address was specified and the socket is already connected.<br>&nbsp;&nbsp;&nbsp;&nbsp; [ECONNREFUSED]&nbsp;&nbsp;&nbsp;&nbsp; The socket received an ICMP destination unreachable<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; message from the last message sent.&nbsp; This typically<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; means that the receiver is not listening on the remote<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; port.<br>&nbsp;&nbsp;&nbsp;&nbsp; [EHOSTDOWN]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The remote host was down.<br> &nbsp;&nbsp;&nbsp;&nbsp; [ENETDOWN]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The remote network was down.<br><br><br>Me inclino por que no puede alcanzar la red de origen del cliente que genera el information request ¿ Puedes mostrarme un dump de un request DHCP desde un cliente ?<br clear="all"> <br>-- <br>Jorge Niedbalski R.<br>-----------------------------------------<br> </div> </blockquote></div><br>Estimado Roque :<br> <br> Creo que es un bug en la funcion server6_send mas especificamente en la validacion de la variable struct sockaddr *from ¿ Tienes la opcion de recompilar o instalaste un package ? ¿ o te quedaste con la configuracion del isc-dhcp-server? . Si puedes recompilar prueba con el siguiente patch que genera una linea de log en debug, me envias la info del debug (no tengo instalacion de wide-dhcpv6 para probar) , luego de eso validaremos la estructura y comprobaremos si es un bug:<br> <br> --- common.c&nbsp;&nbsp;&nbsp; 2008-07-16 13:05:06.000000000 -0400<br> +++ common.c.old&nbsp;&nbsp;&nbsp; 2008-07-16 13:05:33.000000000 -0400<br> @@ -824,6 +824,7 @@<br> &nbsp;&nbsp;&nbsp;&nbsp; int error;<br> &nbsp;<br> &nbsp;&nbsp;&nbsp;&nbsp; error = sendto(s, buf, len, 0, sa, sysdep_sa_len(sa));<br> +&nbsp;&nbsp;&nbsp; dprintf(LOG_DEBUG, FNAME, "socket error: %s", error);<br> &nbsp;&nbsp;&nbsp;&nbsp; return (error != len) ? -1 : 0;<br> &nbsp;}<br> &nbsp;<br> Saludos,<br> <br clear="all"><br>-- <br>Jorge Niedbalski R.<br>-----------------------------------------<br> </div> _______________________________________________<br>LACTF mailing list<br><a href="mailto:LACTF@lacnic.net">LACTF@lacnic.net</a><br><a href="https://mail.lacnic.net/mailman/listinfo/lactf">https://mail.lacnic.net/mailman/listinfo/lactf</a><br></blockquote></div><br></div></body></html>