Re: PPP difficulties regarding connection establishment and bogus DNS received

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Pierre-Yves Paulus wrote:
Hello,

I've a Debian etch system connected to the web through a GPRS/UMTS
PCMCIA card. I'm using pppd to connect it to the ISP. However, I see
quite a lot of connection failures (connection establishment has to be
tried quite a few times before it succeeds), and even worse, the
connection often succeeds, but with bogus DNS servers IP's supplied
(10.11.12.13 and 10.11.12.14), rendering it useless.

I've looked through the archives
(http://www.opensubscriber.com/message/linux-ppp@xxxxxxxxxxxxxxx/7889888.html),
and found that the bogus DNS problem has already been seen when the
peer insists on wins servers, but this is not the case here.

So I suppose that there are some differences between the various peers
available by the ISP, and that only some of them accept the way "my"
pppd deals with them, but I've no idea about how and what to change to
increase the success rate and most importantly avoid this bogus DNS
problem.

Attached is patch I made for my GPRS modem with the same problem.
diff -uprN ppp-2.4.4.orig/pppd/ipcp.c ppp-2.4.4/pppd/ipcp.c
--- ppp-2.4.4.orig/pppd/ipcp.c	2005-08-26 02:59:34.000000000 +0300
+++ ppp-2.4.4/pppd/ipcp.c	2008-03-15 19:00:53.000000000 +0200
@@ -1097,19 +1097,11 @@ ipcp_nakci(f, p, len, treat_as_reject)
 	      );
 
     NAKCIDNS(CI_MS_DNS1, req_dns1,
-	     if (treat_as_reject) {
-		 try.req_dns1 = 0;
-	     } else {
 		 try.dnsaddr[0] = cidnsaddr;
-	     }
 	     );
 
     NAKCIDNS(CI_MS_DNS2, req_dns2,
-	     if (treat_as_reject) {
-		 try.req_dns2 = 0;
-	     } else {
 		 try.dnsaddr[1] = cidnsaddr;
-	     }
 	     );
 
     /*

[Index of Archives]     [Linux Audio Users]     [Linux for Hams]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Fedora Users]

  Powered by Linux