Hey Steve,

A while back you posted a MASQ MTU patch that was supposed to
fix our MTU issue.  Did you find out if it fixed the problem
or not?

Also.. this is the patch I have for it but it doesn't look
complete.  Is it?  Could you repost it if it isn't complete?


--David



At 07:10 PM 12/1/97 +0000, Steven Clarke wrote:
>On Mon, 1 Dec 1997, Penio Penev wrote:
>
>> On Sun, 30 Nov 1997, David A. Ranch wrote:
>> 
>> > >But the moment I try to get data from a Netscape-Enterprise/2.01 server
>> > >the connection hangs from the internal hosts.  Here is a telnet
>> > >transcript:
>> 
>> Hangs forever, that it. Not hang ups.
>> 
>> > Just curious.. what is your MTU set to on the modem?
>> 
>> ppp0      Link encap:Point-Point Protocol  
>>           inet addr:206.98.xxx.xxx  P-t-P:206.98.xxx.yyy Mask:255.255.255.0
>>           UP POINTOPOINT RUNNING  MTU:296  Metric:1
>>           RX packets:212832 errors:394 dropped:394 overruns:0
>>           TX packets:129270 errors:0 dropped:0 overruns:0
>
>I think you've hit to Masq/MTU bug. Please try recompiling your kernel
>with the attached patch.
>
>In detail:
> Can to the directory containing the kernel source that you want to compile
> patch -p1 <../linux-ip-fragment-fix.patch             (this file)
> make dep ; make clean ; make zlilo ; make modules ; make modules_install
> reboot onto the new kernel.
>
>Can you please report back to the list if this helps or not.
>
>As an alternative, try increasing the MTU on the ppp0 interface to 1500 -
>however, it would be better if you could try the patch first as this
>appears to be a serious bug that needs fixing.
>
>Steve Clarke
>diff -u --recursive --new-file linux/net/ipv4/ip_fragment.c.old
linux/net/ipv4/ip_fragment.c
>--- linux/net/ipv4/ip_fragment.c.orig  Tue Aug 12 19:30:25 1997
>+++ linux/net/ipv4/ip_fragment.c       Fri Nov 14 12:19:25 1997
>@@ -584,7 +584,17 @@
>        */
> 
>       tfp = NULL;
>-      tfp = ip_frag_create(offset, end, skb, ptr);
>+
>+      if (offset<end)
>+              tfp = ip_frag_create(offset, end, skb, ptr);
>+      else {
>+              static unsigned long frag_warning_time = 0;
>+
>+              if (jiffies - frag_warning_time > HZ*60) {
>+                      frag_warning_time = jiffies;
>+                      printk(KERN_INFO "IP: Invalid IP fragment (offset > end) found 
>from
%d.%d.%d.%d\n", NIPQUAD(iph->saddr));
>+              }
>+      }
> 
>       /*
>        *      No memory to save the fragment - so throw the lot. If we
.----------------------------------------------------------------------------.
|  David A. Ranch - Linux/Networking/PC hardware         [EMAIL PROTECTED]  |
!----                                                                    ----!
`----- For more detailed info, see http://www.ecst.csuchico.edu/~dranch -----'
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
For daily digest info, email [EMAIL PROTECTED]

Reply via email to