Re: Verizon Express Network (1X, 3G) Under Linux

From: Jared (ziplux_at_attbi.com)
Date: 07/10/03


Date: 9 Jul 2003 19:40:41 -0700

Thank you for posting this information! It is the most concise and
complete guide I have seen for getting this type of setup working.
I've got the same phone as you (Motorola v120e) and I just picked up
the cable so I'll definitaly try this.

I read on a message board I frequent that all Verizon phones get free
Express Network service if they were activated after June 1, 2003.
I'm going to call up Verizon and attempt to confirm this, but I think
I may just try to connect to the Express Network and see if it works.
Can anyone else with a Verizon phone confirm this?

celldev@gearnine.com (Mitch Walker) wrote in message news:<7e176081.0306272349.44d0ea67@posting.google.com>...
> This is an answer, not a question. Sorry in advance for the
> prolicity.
>
> I've spent the last week slamming my head against a wall trying to get
> a linux machine (Kernel 2.4.21) talking on the new Verizon Express
> Network by way of a Motorola v120e handset. Hours on the phone with
> Verizon's tech support got me nowhere. Most of them didn't even know
> what Express Network was. Somehow, through a lucky blend of divine
> inpiration and raw force of brute heuristics, I got the damn thing
> working. I'm just writing this to pass the word on. If this helps
> ANYONE, please drop me a line. I'd like to know I've saved someone
> else the days of toil and frustration I just went through.
>
> The answer to the problem is simple, and if Verizon documented their
> system at all, it'd be easy to find.
>
> The 1X (Express Network) server uses CHAP MD-5 AUTHENTICATION over
> PPP. That took me three whole days to find out. Let's just savor it
> for a moment... CHAP MD-5.
>
> If that doesn't instantly trigger a "EUREKA!" equivalent, here's the
> blow-by-blow walk-thru:
>
> 0. Sign Up for Express Network
>
> The natural 0th step in getting most commercial services to work is
> busting out the pocketbook. You need to call Verizon and specifically
> set up the Express Network feature. This is greatly confounded by the
> fact that most of the reps don't know anything about it (as of this
> writting). Most of the reps I talked to suggested that I might mean
> Mobile Office, but that's just the low speed ISP that everyone gets
> stock. Express Network is a very specific feature that only works on
> 1X compatible phones, only works in a few key cities and costs an arm
> and a leg. As I'm writting this, it costs about $80/mo for unlimitied
> access (doesn't eat into air time, either, so they call it
> promotional. Promotional, for $80/mo?! God save us all from the
> regular service, then.) I think the cheapest plan is $35/mo for 150
> minutes that also costs you air time. Anyway, if you're reading this,
> you've probably wrapped your head around the costs... and if you're
> going to put down that kind of money, you're certainly going to want
> it working. So here's the technical junk:
>
> 1. USB Setup.
>
> I connected my handset with a cheap USB cable, but I suppose you could
> do it through the parport or serial port(?). I'll explain USB here,
> since that's what I know (and it's most common). You need to compile
> your kernel with USB support (obviously). Make sure you compile the
> module or built-in for the hub type you're using (UHCI or OHCI). When
> in doubt, it doesn't hurt to go with both. In addition, make sure to
> compile the ACM (Abstract Comm. Module) module. That's the guy who
> talks to your phone. I think it comes up as "USB modems" or something
> in the kernel config.
> ** IMPORTANT **
> If you're compiling Linux 2.4.20 or before, YOU MAY NEED TO MODIFY THE
> ACM MODULE a little so it will detect your phone. I know the Motorola
> v120e needed modification to the ACM.
> Find this function near the end (~line 653) of
> /usr/src/linux/drivers/usb/acm.c:
>
> static struct usb_device_id acm_ids[] = {
> { USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
> { }
> };
>
> In older code, the define USB_CLASS_COMM isn't used; it's just the
> number 2.
> Add another call to the USB_DEVICE_INFO macro with args
> USB_CLASS_COMM, 2, 0, so it looks like this:
>
> static struct usb_device_id acm_ids[] = {
> { USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
> { USB_DEVICE_INFO(USB_CLASS_COMM, 2, 0) },
> { }
> };
>
> Compile this and it should do you proud.
>
> Once the new kernel and mods are up and running, plug in the phone.
> It should squeek and possibly light up if it can draw enough power
> from the USB to relieve its batteries. Tail the message log. It
> should rattle on about registering a USB device. If you're using a
> recognized phone, the name of the handset should appear somewhere near
> the end. That's a really good sign that it's working. Near the name
> of your phone should be a line like:
>
> Jun 24 15:57:16 nomad kernel: ttyACM0: USB ACM device
>
> This means the phone is tied to the device ttyACM0 (may be different
> on your machine). Look for this file in the /dev directory (it may be
> under a sub, like input/) and memorize its location. Essentially,
> this file IS the phone as far as the kernel's concerned. If you want,
> set up a less cludgy symlink, like /dev/phone.
>
> 2. Check Your Phone
>
> Check to see if your phone was properly set up with the system. If
> you have a terminal emulator like minicom, just point it to your phone
> device (/dev/input/ttyACM0 with my setup) and try to dial out. Type
> 'ATDT555555' (where 5555555 is your landline or nearby city phone and
> you don't type the 's). First of all, if you can type at all, things
> are going well, and the phone's screen should light up and say it's
> calling. Then the target phone should ring. If this works, you're
> almost there. If not, you need to hack at the USB stuff more, or
> maybe just check the connections on the cable (mine is amazingly
> fickle).
>
> 3. Set up a Dialer Script
>
> Most modern distros of Linux ship with wvdial these days, or some
> equiv. My thinking is "Smoke 'em if you got 'em". You gain a little
> extra control by going the grizzled pppd-and-chat route, but I didn't
> need it, and nothing could actually be MORE esoteric than chat and
> pppd. Never-the-less, I'll include the appropriate chat/pppd call
> here.
>
> But first, wvdial. Your /etc/wvdial.conf file should look like this:
>
> [Dialer Defaults]
> Modem = /dev/input/ttyACM0
> Baud = 115200
> Init1 = ATZ
> Init2 = AT$QCMDR=3
> Modem Type = Digital Modem
> Phone = #777
> Username = 5555555555@vzw3g.com
> Password = vzw
> Stupid Mode = on
>
> Modem is the device that's assigned to your phone. The username is
> your 10-digit number @vzw3g.com (3G network, get it?). Everyone's
> password is vzw. Stupid mode just starts PPP negotiation immediately.
> Saves waiting for a timeout on the log in prompt. You may not need
> the other entries... if parsimony's your kick, read the man pages and
> weed out the fluff. This posting isn't gospel.
>
> If you don't have wvdial or all that black-boxing galls you too much,
> here's a functional call to pppd/chat. Don't say I didn't warn you
> about the esoteria:
>
> pppd /dev/input/ttyACM0 115200 debug connect \
> "chat -vs '' AT OK ATDT#777 CONNECT '\d\c'" \
> nobsdcomp nodeflate noauth user 55555555555@vzw3g.com defaultroute
>
> You may not need to disable bsd compression, deflation or two-way
> authentication, but I was trying to keep things simple (and you might
> not have the mods).
>
> You can try running wvdial or pppd/chat now, but you won't get in, and
> that's the joke. It'll connect and the phone should say something
> like "Packet Data", but after a few seconds it'll konk out. This is
> the problem I'd been railing against for 72 hours and that no one at
> Verizon knew anything about. So, finally, here's the key you've all
> been waiting for--
>
> 4. Set up a CHAP User/Pass
>
> The confusing thing is that wvdial (or pppd/chat) has your user/pass,
> but, if you watch it, it won't use it. That's because it's waiting
> for a plain-text prompt which never comes (Stupid Mode spares you the
> fruitless waiting process). The server actually authenticates through
> a method called CHAP (CHallenge Authentication Process?), and that's
> pppd's job. The pppd will authenticate with CHAP if you've got a
> record in the /etc/ppp/chap-secrets file. Modify that file to look
> something like this:
>
> # Secrets for authentication using CHAP
> # client server secret IP addresses
> 5555555555@vzw3g.com * vzw *
>
> Again, replace the 5s with your number. The asterisks simply mean
> this record applies to all servers and IP addresses (note the table
> headers).
>
> AND...
>
> THAT'S IT.
>
> Once you've put this record in the /etc/ppp/chaps-secrets file, you
> can fire up wvdial or pppd/chat and enjoy all the wonders of
> high-latency, exhorbitant wireless networking. With Linux, no less.
> Will wonders never cease.
>
> 5 (opt.) Low Speed (QNC/Mobile Office/14.4k) Connection
>
> On an optional note, even if you don't subscribe to the special
> Express Network service, anyone can set up a low speed data-link with
> verizon for any nerdy emergencies that might require it. Just follow
> the above steps, but instead of the initialization string
> "AT$QCMDR=3", substitute "AT$QCMDR=2". It's my understanding that
> this Hayes code loads a register in the phone (QCMDR) with the
> connection requested, which is used for routing by Verizon. Allowable
> values are:
>
> 3 = Express Network (High Speed)
> 2 = Mobile Office (14.4kbps)
> 1 = ?
> 0 = PDAs? (Just kicks me out...)
>
> Anyway, that's not really important. Back to Mobile Office: note that
> it costs you air time, so be careful when you use it. In theory, it
> yields a 14.4k pipe, but in practice its even slower, and with the
> same regretable latancy of Express Network, you'd better be thinking
> "POP3" instead of "PINE through SSH or Telnet". You won't live long
> enough.
>
>
> Anyway, that's the deal. I've never posted to these groups before,
> but after days of desperately searching them for help, I thought I'd
> better start. If it saves even one other guy the torment of nebulous
> error messages and well-intentioned-but-under-trained help-desk
> attendants, then I've done my job. I hope it helps.



Relevant Pages

  • RE: Wireless Security Notes and Findings (from this list and other places)
    ... There are two general areas of wireless security: Authentication and ... authentication standard that works with wireless networks. ... client computer runs a client program to connect to the network with a ...
    (Security-Basics)
  • Re: LG Voyager - wow - what a phone
    ... If one calls Verizon CS and tell ... While most common uses for Internet are permitted by ... capacity issues and interference with the network. ... FTP is an automated machine-to-machine connection. ...
    (alt.cellular.verizon)
  • Re: IP address assignment problem
    ... I have a little problem and seek for ur thoughts, let's assume I'm in a very open environment where everyone can very easily try to get his/her laptop on the network and IP addresses are assigned by a DHCP server and we are in a domain environment, how do I prevent machines that are not part of our domain to be assigned an IP address? ... This approach doesn't stop your rogue clients from connecting to other clients, but merely doesn't give them the information they normally need to do so. ... Using 802.1x, your workstations authenticate through the switch to a radius server before they are allowed any connectivity. ... This authentication can use X.509 certificates, computer account credentials from AD, or whatever else you'd normally configure radius to authenticate with. ...
    (Focus-Microsoft)
  • Re: quick2net and express network
    ... When I setup my dialup account for Express Network, ... The area doesn't matter (as long as you are in a verizon native area, I live and travel in my RV, and have been using it for the last few years.. ... If you know the next level of phone that I may able to afford to switch over, also I'm trying to find mobile office kit for vx3200 and it's very rare and tough to find, I only found one or two online stores selling them but the verizon's store and the outlets do not carry them and unwilling to order them for me sigh! ...
    (alt.cellular.verizon)
  • Re: Kerberos machine authentication - apparent authentication failures
    ... When you joined your computer to the domain your wireless network card was ... denied access until you can authenticate to a domain controller as a user. ... While kerberos is the default authentication protocol of choice, ...
    (microsoft.public.windows.server.security)