title: GPRS modem and PPP issue on Linux
body: <p>I have a MultiTech MTD-H5-2.0 GPRS cellular modem that is connected to a linux machine via USB. I can see the device and communicate with it directly without issue. I've trying to setup PPP so I can access the internet over this device. I'm running into some trouble. When PPP comes up, it assigns the same IP for both the local and remote ends. I was expecting them to be different. Does anyone have some experience setting up a PPP connection with a cellular modem?
  You can see my PPP script and AT-commands below.</p>
  
  <pre><code># pppd --version
  pppd version 2.4.5
  
  # cat pppd_script
  debug
  lcp-echo-failure 3
  lcp-echo-interval 3
  nodetach
  nomagic
  /dev/ttyACM0
  115200
  crtscts
  noauth
  noipdefault
  ipcp-accept-local
  ipcp-accept-remote
  usepeerdns
  novj
  nobsdcomp
  novjccomp
  nopcomp
  noaccomp
  lock
  connect "/usr/sbin/chat -v -f /root/multitech-connect"
  defaultroute
  
  # cat multitech-connect
  #!/bin/sh
  ABORT "BUSY"
  '' AT
  #OK ATE0\r
  OK AT+CREG?
  OK AT+CSQ
  OK AT+CGDCONT=1,"IP","M2M.COM.ATTZ"
  OK ATD*99***1#
  CONNECT ''
  
  # pppd file pppd_script  &amp;
  Script /usr/sbin/chat -v -f /root/multitech-connect finished (pid 1661), status = 0x0
  Serial connection established.
  using channel 28
  Using interface ppp0
  Connect: ppp0 &lt;--&gt; /dev/ttyACM0
  rcvd [LCP ConfReq id=0x1 &lt;asyncmap 0x0&gt; &lt;auth pap&gt; &lt;magic 0x754cbce&gt; &lt;pcomp&gt; &lt;accomp&gt;]
  Warning - secret file /etc/ppp/pap-secrets has world and/or group access
  sent [LCP ConfReq id=0x1 &lt;asyncmap 0x0&gt;]
  No auth is possible
  sent [LCP ConfRej id=0x1 &lt;auth pap&gt; &lt;magic 0x754cbce&gt; &lt;pcomp&gt; &lt;accomp&gt;]
  rcvd [LCP ConfAck id=0x1 &lt;asyncmap 0x0&gt;]
  rcvd [LCP ConfReq id=0x2 &lt;asyncmap 0x0&gt;]
  sent [LCP ConfAck id=0x2 &lt;asyncmap 0x0&gt;]
  sent [LCP EchoReq id=0x0 magic=0x0]
  sent [CCP ConfReq id=0x1 &lt;deflate 15&gt; &lt;deflate(old#) 15&gt;]
  sent [IPCP ConfReq id=0x1 &lt;addr 0.0.0.0&gt; &lt;ms-dns1 0.0.0.0&gt; &lt;ms-dns2 0.0.0.0&gt;]
  rcvd [LCP EchoRep id=0x0 magic=0x0]
  rcvd [LCP ProtRej id=0x3 80 fd 80 fd 01 01 00 0c 1a 04 78 00]
  Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
  sent [IPCP ConfReq id=0x1 &lt;addr 0.0.0.0&gt; &lt;ms-dns1 0.0.0.0&gt; &lt;ms-dns2 0.0.0.0&gt;]
  sent [IPCP ConfReq id=0x1 &lt;addr 0.0.0.0&gt; &lt;ms-dns1 0.0.0.0&gt; &lt;ms-dns2 0.0.0.0&gt;]
  rcvd [IPCP ConfReq id=0x1]
  sent [IPCP ConfNak id=0x1 &lt;addr 0.0.0.0&gt;]
  rcvd [IPCP ConfNak id=0x1 &lt;addr 10.61.144.128&gt; &lt;ms-dns1 8.8.8.8&gt; &lt;ms-dns2 8.8.4.4&gt;]
  sent [IPCP ConfReq id=0x2 &lt;addr 10.61.144.128&gt; &lt;ms-dns1 8.8.8.8&gt; &lt;ms-dns2 8.8.4.4&gt;]
  rcvd [IPCP ConfReq id=0x2 &lt;addr 10.61.144.128&gt;]
  sent [IPCP ConfAck id=0x2 &lt;addr 10.61.144.128&gt;]
  rcvd [IPCP ConfAck id=0x2 &lt;addr 10.61.144.128&gt; &lt;ms-dns1 8.8.8.8&gt; &lt;ms-dns2 8.8.4.4&gt;]
  not replacing existing default route via 172.20.72.1
  local  IP address 10.61.144.128
  remote IP address 10.61.144.128
  primary   DNS address 8.8.8.8
  secondary DNS address 8.8.4.4
  Script /etc/ppp/ip-up started (pid 1665)
  Script /etc/ppp/ip-up finished (pid 1665), status = 0x0
  
  # ifconfig ppp0
  ppp0: flags=4305&lt;UP,POINTOPOINT,RUNNING,NOARP,MULTICAST&gt;  mtu 1500  metric 1
          inet 10.61.144.128  netmask 255.255.255.255  destination 10.61.144.128
          ppp  txqueuelen 3  (Point-to-Point Protocol)
          RX packets 4  bytes 58 (58.0 B)
          RX errors 0  dropped 0  overruns 0  frame 0
          TX packets 7  bytes 120 (120.0 B)
          TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  
  # ping 8.8.8.8
  PING 8.8.8.8 (8.8.8.8): 56 data bytes
  ^C
  --- 8.8.8.8 ping statistics ---
  6 packets transmitted, 0 packets received, 100% packet loss
  
  # route -n
  Kernel IP routing table
  Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
  0.0.0.0         172.20.72.1     0.0.0.0         UG    0      0        0 wlan0
  0.0.0.0         10.0.1.254      0.0.0.0         UG    0      0        0 eth0
  10.0.0.2        10.0.1.2        255.255.255.255 UGH   0      0        0 eth0
  10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
  172.20.72.0     0.0.0.0         255.255.252.0   U     0      0        0 wlan0
  </code></pre>
  
  <p>Forgetting PPP for a moment and using just some AT-commands I can see that the modem is able to access the internet. Leaving me to think this is just an issue with my PPP setup.</p>
  
  <pre><code>#&gt; AT+CREG?
  AT+CREG?
  +CREG: 0,1
  OK
  #&gt; AT#PING="www.google.com"
  AT#PING=www.google.com
  #PING: 01,"216.58.195.68",27,55
  #PING: 02,"216.58.195.68",2,55
  #PING: 03,"216.58.195.68",2,55
  #PING: 04,"216.58.195.68",1,55
  #&gt; AT#PING="8.8.8.8"
  AT#PING=8.8.8.8
  #PING: 01,"8.8.8.8",17,56
  #PING: 02,"8.8.8.8",1,56
  #PING: 03,"8.8.8.8",3,56
  #PING: 04,"8.8.8.8",1,56
  </code></pre>
  
  <p>Thank you for any suggestions.</p>