|
|
Re: [PATCH 2/5] ipv4: Kill ip_rt_frag_needed(). |
On Tue, Jun 12, 2012 at 01:33:33PM -0700, David Miller wrote: > > We can't do exactly as my patch did, because it allows remote entities > to easily poison PMTU information. All they have to know is that > there is some UDP or RAW socket open with a certain ID and then send > forged ICMP to us. Yes, I know what you mean. But not updating the the cached pmtu informations results in slow path fragmentation along the path. Btw. what happens to ipv6 if we stop doing pmtu discovery? Shouldn't we reduce the packet size to 1280 bytes then? > > What we possibly could do is adjust the socket's IP_PMTUDISC_* setting > from IP_PMTUDISC_WANT to IP_PMTUDISC_DONT in response to PMTU > messages. > I think an application that sets IP_PMTUDISC_WANT explicitly will rely on the fact that the kernel does pmtu discovery. Changing the socket setting to IP_PMTUDISC_DONT the first time we get into trouble makes IP_PMTUDISC_WANT pointless for udp and raw sockets. Another option would be to change the sockets default setting from IP_PMTUDISC_WANT to IP_PMTUDISC_DONT (at least for udp and raw) and do pmtu discovery if an application sets IP_PMTUDISC_WANT. With this we don't have the pmtu cache poisoning issue as the default. We would only have it if a sockets sets IP_PMTUDISC_WANT explicitly. This is not perfect too, but I fear there is no perfect solution here. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
[Linux Kernel Discussion] [Ethernet Bridging] [Linux Wireless Networking] [Linux Bluetooth Networking] [Linux Networking Users] [VLAN] [Git] [IETF Annouce] [Linux Assembly] [Security] [Bugtraq] [Photo] [Singles Social Networking] [Yosemite Information] [MIPS Linux] [ARM Linux Kernel] [ARM Linux] [Linux Virtualization] [Linux Security] [Linux IDE] [Linux RAID] [Linux SCSI] [Free Dating]
![]() |
![]() |