public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* Kernel sends ICMP unreachable for GRE packets even if there is a listening socket
@ 2015-02-10 15:24 Steinar H. Gunderson
  2015-02-10 16:09 ` Eric Dumazet
  0 siblings, 1 reply; 4+ messages in thread
From: Steinar H. Gunderson @ 2015-02-10 15:24 UTC (permalink / raw)
  To: netdev

[Resent from Bugzilla]

Hi,

I have a userspace GRE listener, which opens a raw socket (error handling removed):

        int gresock = socket(AF_INET6, SOCK_RAW, IPPROTO_GRE);
        bind(gresock, (sockaddr *)&my_addr, sizeof(my_addr));

and then select()s and recvfrom()s on it, as well as sendto().

This works great. I can send and receive GRE packets. However, Linux _also_
sends ICMPv6 unreachables when the other end sends to me. I assume this is
because I don't have a corresponding kernel GRE tunnel interface. (I don't use
the kernel GRE because I want, among others, stronger reordering functionality
and possibly error correction, which is not in any standard.)

Can this be suppressed when I have such a socket giong? ip6tables -A OUTPUT can
stop them, but it seems very hacky and kludgy.

/* Steinar */
-- 
Homepage: http://www.sesse.net/

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-02-10 16:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-10 15:24 Kernel sends ICMP unreachable for GRE packets even if there is a listening socket Steinar H. Gunderson
2015-02-10 16:09 ` Eric Dumazet
2015-02-10 16:16   ` Steinar H. Gunderson
2015-02-10 16:18   ` Eric Dumazet

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox