Reliance Netconnect Broadband+ on Debian

Updated: Apr 22, 2023

Hey guys, I’m back after a looooonnnnngggggggg…. gap… :-)

Well, living without internet is something different. I experienced how a mobile with 2-12 KB/s will serve a person. You will get very much happy if it touches 12 KB/s.

But now.., Wow !!! I’m connected again !!! with good speed… here is the story.

Recently I moved from suburb to inner city. So, its time to get all my regular activities back into track. For that to happen, I need a good internet connection, like the one which I enjoyed from BSNL Broadband. But now, the problem is, I can’t get a wired broadband as I’m currently staying in a mansion. So only choice is, to go for USB modem. Already I had a bitter experience with Photon+, so I considered other offers and found some +ve reviews about Netconnect. So, I decided to go for it.

I called one of the reseller in nungambakkam, within 4 hours a guy(lokesh) appeared before me with the Card ( Huawei Technologies Co., Ltd. EC1260 Wireless Data Modem HSD USB Card) and some forms. We discussed about support for linux. He said that he heard from someone that the card was working in linux ( I think I’m the first linux customer to him). I googled a lot, There are lot of ubuntu stuffs related to netconnect. So I’m pretty confident that it will work in linux. Applied for it and got the card.

Tinkering starts here, At first, when I plugged it into my laptop, debian realized it as a scsi storage and loaded it as one of my DVD drive (/dev/sr0). Then I came to know that it was a switchable USB device. Obviously, *nix guys always have a solution for a popular problem. Here is one of the popular problem and the solutions is,

# aptitude install usb-modeswitch

usb-modeswitch takes care of switching these kind of devices to USB modems so that udev will load proper modules into kernel. Once you installed usb-modeswitch, you can see the following messages appear in /var/log/syslog when you plug-in the device,

New USB device found, idVendor=12d1, idProduct=1446
New USB device strings: Mfr=1, Product=2, SerialNumber=4
Product: HUAWEI Mobile
Manufacturer: HUA�WEI TECHNOLOGIES
SerialNumber: �������������������
configuration #1 chosen from 1 choice
kernel: [10337.323907] scsi8 : SCSI emulation for USB Mass Storage devices
kernel: [10337.367370] usb-storage: device found at 4
kernel: [10337.367379] usb-storage: waiting for device to settle before scanning
usb_modeswitch: switching 12d1:1446 (HUA�WEI TECHNOLOGIES: HUAWEI Mobile)
USB disconnect, address 4
new full speed USB device using ohci_hcd and address 5
New USB device found, idVendor=12d1, idProduct=140b
New USB device strings: Mfr=1, Product=2, SerialNumber=4
Product: HUAWEI Mobile
Manufacturer: HUA�WEI TECHNOLOGIES
SerialNumber: �������������������
configuration #1 chosen from 1 choice
GSM modem (1-port) converter detected
GSM modem (1-port) converter now attached to ttyUSB0
GSM modem (1-port) converter detected
GSM modem (1-port) converter now attached to ttyUSB1
GSM modem (1-port) converter detected
GSM modem (1-port) converter now attached to ttyUSB2
registered new interface driver option
v0.7.2:USB Driver for GSM modems

Now its time to dial, since I’m using Debian, I have two options, one is wvdial and the other one is pppconfig + pon + poff. I’m already a fan of pppconfig. So decided to create a profile using pppconfig. Here is my peers file,

# This optionfile was generated by pppconfig 2.3.18.
#
#
hide-password
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/netconnect"
debug
/dev/ttyUSB0
115200
defaultroute
noipdefault
user "xxxxxxxxxx" # fill your MDN number without the leading 0 (10 digit)
remotename netconnect
ipparam netconnect

usepeerdns
novjccomp

and here is my chatscript

# This chatfile was generated by pppconfig 2.3.18.
# Please do not delete any of the comments.  Pppconfig needs them.
#
# ispauth PAP
# abortstring
ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
# modeminit
'' ATZ
# ispnumber
OK-AT-OK "ATDT#777"
# ispconnect
CONNECT \d\c
# prelogin

# ispname
# isppassword
# postlogin

# end of pppconfig stuff

Here is how you can generate your settings files using pppconfig

  • Give a good name to your PPP profile (from here, I’ll refer this name as profilename)

  • Choose dynamic DNS

  • Choose PAP Authendication

  • Give your MDN number without the leading 0 (10 digit) as your Username

  • Give Password same as Username

  • Choose default speed (115200)

  • Choose Tone dialing method

  • Give #777 as the Phone Number to Dial ISP.

  • Choose No for modem detection and give /dev/ttyUSB0 as your modem

  • Verify your settings and save. These settings will be saved in /etc/ppp/peers/profilename and /etc/chatscripts/profilename

Once you are done with the above steps, all you need to do is, start pppd using pon

[root@Debian ~] # pon profilename

Here comes the trickiest part in my experiment. One of the worst thing about Netconnect is, Reliance server will never respond to your packets untill you activate the device from "F``*in W``dows !!!!!". If your device is not activated, your pppd with cry and die with the following messages.

pppd 2.4.4 started by root, uid 0
Serial connection established.
using channel 4
Using interface ppp1
Connect: ppp0  /dev/ttyUSB0
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
sent [LCP ConfReq id=0x1    ]
LCP: timeout sending Config-Requests
Connection terminated.
Receive serial link is not 8-bit clean:
Problem: all had bit 7 set to 0
Hangup (SIGHUP)
Modem hangup
Exit.

Thankfully one of my new friend who is running a browsing center nearby helped me to activate the device from his windows machine. There are some steps to be followed to activate in Windows, Call the Reliance guys, they are very much familiar with the procedure.

I’m ready to connect with internet !!!. I plugged the device into my laptop and started pppd. Reliance server responded nicely. Finally!!!! I got the connection. Here is the logs from /var/log/syslog,

pppd[32557]: pppd 2.4.4 started by root, uid 0
chat[32563]: abort on (BUSY)
chat[32563]: abort on (NO CARRIER)
chat[32563]: abort on (VOICE)
chat[32563]: abort on (NO DIALTONE)
chat[32563]: abort on (NO DIAL TONE)
chat[32563]: abort on (NO ANSWER)
chat[32563]: abort on (DELAYED)
chat[32563]: send (ATZ^M)
chat[32563]: expect (OK)
chat[32563]: ATZ^M^M
chat[32563]: OK
chat[32563]:  -- got it
chat[32563]: send (ATDT#777^M)
chat[32563]: expect (CONNECT)
chat[32563]: ^M
chat[32563]: ATDT#777^M^M
chat[32563]: CONNECT
chat[32563]:  -- got it
chat[32563]: send (\d)
pppd[32557]: Serial connection established.
pppd[32557]: using channel 4
pppd[32557]: Using interface ppp0
pppd[32557]: Connect: ppp0  /dev/ttyUSB0
pppd[32557]: sent [LCP ConfReq id=0x1    ]
pppd[32557]: rcvd [LCP ConfAck id=0x1    ]
pppd[32557]: rcvd [LCP ConfReq id=0x2     ]
pppd[32557]: sent [LCP ConfAck id=0x2     ]
pppd[32557]: sent [LCP EchoReq id=0x0 magic=0x2d94925b]
pppd[32557]: sent [PAP AuthReq id=0x1 user="xxxxxxxxxx" password=]
pppd[32557]: rcvd [LCP EchoRep id=0x0 magic=0xcd908d56]
pppd[32557]: rcvd [PAP AuthAck id=0x1 ""]
pppd[32557]: PAP authentication succeeded
pppd[32557]: sent [CCP ConfReq id=0x1   ]
pppd[32557]: sent [IPCP ConfReq id=0x1    ]
pppd[32557]: rcvd [IPCP ConfReq id=0x1  ]
pppd[32557]: sent [IPCP ConfAck id=0x1  ]
pppd[32557]: rcvd [LCP ProtRej id=0x1 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
pppd[32557]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
pppd[32557]: rcvd [IPCP ConfNak id=0x1   ]
pppd[32557]: sent [IPCP ConfReq id=0x2    ]
pppd[32557]: rcvd [IPCP ConfAck id=0x2    ]
pppd[32557]: Cannot determine ethernet address for proxy ARP
pppd[32557]: local  IP address 115.184.98.253
pppd[32557]: remote IP address 220.224.141.145
pppd[32557]: primary   DNS address 202.138.103.190
pppd[32557]: secondary DNS address 202.138.117.60
pppd[32557]: Script /etc/ppp/ip-up started (pid 32583)
pppd[32557]: Script /etc/ppp/ip-up finished (pid 32583), status = 0x0

To stop the connection, you need to issue this command,

[root@Debian ~] # poff profilename

This is my personal request to service providers, Please provide your services to all platforms. Anyway, the struggle seems worthy, My machine never enjoyed 100 KB/s speed in its lifetime :-)

../../_images/speedtest.png

Have a nice day !!!!