From mboxrd@z Thu Jan 1 00:00:00 1970 To: 9fans@cse.psu.edu From: Zoltan Jarai Message-ID: Content-Type: text/plain; charset=us-ascii Subject: [9fans] PPPoE Date: Thu, 11 Apr 2002 08:43:47 +0000 Topicbox-Message-UUID: 759b99dc-eaca-11e9-9e20-41e7f4b1d025 I had to make the following modifications to Russ Cox's pppoe.c to get it work with my ADSL provider (TVnet) here in Hungary. TVnet does not use PPP framing, so I did not need the -F (nor -f) option. The buf[0] at the end is a correction of a typo in the hexdump routine, useful when debugging. diff pppoe-orig.c pppoe.c 236c236 < char e[ERRMAX], path[64]; --- > char e[ERRLEN], path[64]; 239c239 < rerrstr(e, sizeof e); --- > errstr(e); 511d510 < argv[argc++] = "-F"; 687a687 > buf[0] = '\0'; Still, I had problems viewing web pages and connecting to FTP sites. So I checked out Roaring Penguin's PPPoE client for Linux. As they explain it (http://www.roaringpenguin.com/pppoe/als-pppoe-paper.pdf section 4.5) they modify the MSS value in the TCP header of packets. First, I tried to implement their trick (see among their sources rp-pppoe-3.3/src/common.c:/^clampMSS) but I did not succeed, not surprisingly, since I know next to nothing about TCP. But then lowering the default MSS to 1412 (value suggested by them) in the kernel (/sys/src/9/ip/tcp.c:/DEF_MSS) helped. Hope this helps. Zoltan