[Bug 221137] FreeBSD 11+ does not send ICMP redirects
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Aug 1 08:04:09 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221137
Bug ID: 221137
Summary: FreeBSD 11+ does not send ICMP redirects
Product: Base System
Version: 11.1-STABLE
Hardware: Any
OS: Any
Status: New
Severity: Affects Many People
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: igorr at speechpro.com
Created attachment 184886
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184886&action=edit
Very naive patch to support ICMP redirects.
On default gateway "internal" interface has IP 192.168.2.4/21
Also there is dedicated router for 192.168.8.0/23 network.
So part of routing table on default gateway looks like:
192.168.0.0/21 link#5 U em0
192.168.8.0/23 192.168.5.116 UGS em0
Router 192.168.5.116 is accessible from our internal network (of course).
When we had FreeBSD 9.2 on 192.168.2.4 and tried to access some host in
192.168.8.0/23 network it would send ICMP redirect message with new route:
PING 192.168.8.118 (192.168.8.118): 56 data bytes
36 bytes from gw.stc (192.168.2.4): Redirect Host(New addr: 192.168.5.116)
Vr HL TOS Len ID Flg off TTL Pro cks Src Dst
4 5 00 0054 4442 0 0000 3f 01 ab86 192.168.2.26 192.168.8.118
I have upgraded FreeBSD version on our default gateway from 9.2 to 11.0. And
now it does not send ICMP redirects.
I assume that this is caused by removing net.inet.ip.fastforwarding sysctl:
https://svnweb.freebsd.org/base?view=revision&revision=r290383
Unfortunattely we need ICMP redirects, because not all equipment support
getting routes via DHCP options, also some of our workstations and servers have
static IP addresses and don't use DHCP.
I have created very naive patch against FreeBSD 11-STABLE (revision 321782).
And now ICMP redirects work. Patch is attached. It just checks if packet should
be routed to same interface it was received from and in this case just pass
control from ip_tryforward() to ip_input() by returning not NULL.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list