From owner-freebsd-questions@FreeBSD.ORG Wed Sep 3 16:21:14 2003 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 75DC916A4BF for ; Wed, 3 Sep 2003 16:21:14 -0700 (PDT) Received: from blacklamb.mykitchentable.net (65-37-69-87.bras01.elk.ca.frontiernet.net [65.37.69.87]) by mx1.FreeBSD.org (Postfix) with ESMTP id 862FC43F85 for ; Wed, 3 Sep 2003 16:21:13 -0700 (PDT) (envelope-from drew@mykitchentable.net) Received: from tagalong (unknown [165.107.42.110]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) by blacklamb.mykitchentable.net (Postfix) with ESMTP id A72873BF3A6; Wed, 3 Sep 2003 16:21:11 -0700 (PDT) Message-ID: <020b01c37272$10de05d0$6e2a6ba5@lc.ca.gov> From: "Drew Tomlinson" To: "Matthew Emmerton" , "FreeBSD Questions" References: <019101c37248$ffd50c30$6e2a6ba5@lc.ca.gov> <001401c3724a$ba4dc0b0$1200a8c0@gsicomp.on.ca> <01e101c37265$f0b9aef0$6e2a6ba5@lc.ca.gov> <005401c3726e$0db28c40$1200a8c0@gsicomp.on.ca> Date: Wed, 3 Sep 2003 16:21:11 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Subject: Re: How to Get Public IP From LinkSys Router? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Sep 2003 23:21:14 -0000 ----- Original Message ----- From: "Matthew Emmerton" To: "Drew Tomlinson" ; "FreeBSD Questions" Sent: Wednesday, September 03, 2003 3:52 PM Subject: Re: How to Get Public IP From LinkSys Router? > > > > I need to get my public IP address from a LinkSys cable router and > > don't > > > > have any idea where to start. The LinkSys is doing NAT and my FBSD > > box > > > > in on the private network on the inside. What commands and/or ports > > are > > > > there that would provide the public IP address from the command line > > so > > > > I pass the IP to a script? Any ideas? > > > > > > The way I do it with my router (BEFW11S4 V2) is to use lynx to > > download the > > > HTML status page from the router and extract the public IP address. I > > do > > > this in a cron job every 15 minutes, and when it notices an IP change, > > it > > > fires off my dynamic DNS updates. > > > > This seems like the best way. Would you be willing to share your script > > that grabs the status page and extracts the IP? I'm not very good with > > regular expressions yet and would appreciate the kick start. > > The sequence of commands I used is quite dependent on the format of the page > (which has changed in the past after firmware upgrades). > > /usr/local/bin/lynx -dump -auth=username:password http://routerip/Status.htm > | /usr/bin/grep "IP Address" | /usr/bin/tail -1 | /usr/bin/awk ' { print > $3 } ' Thank you! That works on my regular BEFW11S4 (no version) at firmware level 1.44.2z, Dec 13 2002 (the latest for this model). Drew