-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
systemd-resolved sends icmp port unreachable to the slowest upstreams #17421
Labels
Comments
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 6, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 6, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 9, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 11, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 11, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 12, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 17, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 18, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 19, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Nov 20, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Dec 2, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Dec 3, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Dec 4, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Dec 7, 2020
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
poettering
added a commit
to poettering/systemd
that referenced
this issue
Feb 15, 2021
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
rpurdie
pushed a commit
to rpurdie/systemd
that referenced
this issue
Feb 16, 2021
…them to a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: systemd#17421
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
systemd version the issue has been seen with
Used distribution
Linux kernel version used (
uname -a)CPU architecture issue was seen on
Expected behaviour you didn't see
Unexpected behaviour you saw
Actually, I was tcpdumping a different issue when I noticed that icmp port unreachable messages were frequently sent to nameservers. First I thought a firewall was misconfigured somewhere, but it turned out to be caused by systemd-resolved on a ubuntu/focal machine.
Steps to reproduce the problem
Example tcpdump
(addresses and names have been rewritten below)
That is:
I don't mind two queries and getting the fast results. But I do mind the unnecessary port-unreachable.
Corresponding strace
Corresponding debug logs
systemd-resolved --status
Thoughts
So, I'm sorry that I'm not using the latest version, but it should be close enough. I searched for this issue, and I didn't find anything related.
I assume
dns_transaction_freeis called on the 2nd transaction as soon as the response to the first has arrived and is validated. Is it possible to make that one wait a few seconds for a definitive answer, reading the data, discarding it, and then closing the socket? Right now it appears to cause noise on the internet.Cheers,
Walter Doekes
OSSO B.V.
The text was updated successfully, but these errors were encountered: