Hello Evgeniy Polyakov First thank you very much for your help. But unfortunately this does not help. The goal of my program is to set a new Address for my own interface. For this i will call the ndisc_rcv function with an own created sk_buff. I think I don't need an ethernet header for this. My problem is the ICMPv6 header. After calling the function ndisc_rcv I get the message "the code is not zero" or somethink else. I think the ICMPv6 header is not on the right place in the sk_buff. The ndisc_rcv function read the icmp header with struct ra_msg *ra_msg = (struct ra_msg *) skb->h.raw and i write the icmp header in my module with struct ra_msg *msg; msg = skb_put (skb , msg_len); Ok I do not realy understand the sk_buff mechanism with tail, headroom and so on, but in the other functions like ndisc_send_na it is similar to my program. Or do you have another idea to set a new interface address in the same way as the router advertisement. Regards Jörg On Wednesday 30 January 2002 4:51 am, Evgeniy Polyakov wrote: > > It looks like you forgot > > skb_reserve(skb, 16); //14 = size of an ethernet header + 2 to > > align and > > eth = (__u8 *) skb_push(skb, 14); > > And of cource fill ethernet header fields somewhere before > hard_start_xmit() with apropriate values. > > If you work not in ethernet lan, than all will be something like this. > > But you also can simple use ndisc_build_ll_hdr() or look into the > net/ipv6/ndisc.c file, where function ndisc_send_na() does exactly what > you want. > > Good luck. > > > Evgeniy Polyakov ( s0mbre ). > - > : send the line "unsubscribe linux-net" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- -------------------------------------------------------- Joerg Eggink Network Laboratories Heidelberg NEC Europe Ltd. Adenauerplatz 6 D-69115 Heidelberg, Germany email: joerg.eggink@ccrle.nec.de http://www.ccrle.nec.de - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html