BSNL Broadband on Linux


Hello everybody,I am glad to see that there are people here who are using Linux with BSNL broadband. People who post problems regarding getting BSNL to work with Linux should keep a few things in mind.While asking for help, it is very important to give some basic information regarding your setup. Otherwise, the reader is left guessing as to what are the circumstances under which you are operating. Here are few points that come to mind:1. Mention what flavor of Linux you are using. For example, I would write something like "I am using Debian Etch".2. Mention the kernel you are running. My case: I am using Debian Etch with 2.6.17-2-486 kernel. The kernel is usually found by giving the "uname -r" command in a terminal.3. For networking problems, it is usually a good idea to also paste the output of the following commands:$> /sbin/ifconfig -a$> route -n4. If you have a LAN card or USB detection issues, it is a good idea to paste the output of$> lspcialong with the model of the LAN card if you know.5. Before posting a problem, try to see what you get in /var/log/syslog or /var/log/messages files. You can view a file in a terminal using the "less " command. You probably have to be root to view the above files. However, if you are more comfortable with a GUI text file editor, e.g. gedit, you can open that as root with the following command (you must have gksu package installed):$> gksu gedit(you can open any GUI application as root using gksu).6. If something stopped working suddenly, it is a good idea to try to describe what you did just prior to the start of the problem.7. Maybe I should have mentioned this before. Clearly mention how you are attempting to connect to your broadband device, via a USB port or through a LAN card.And finally, it helps to list things in a systematic manner and in a clear and readable language. Clarity helps to understand the problem better and you will get a solution faster.Have fun using Linux.



This is a little how-to to configure an ADSL connection in Linux, mainly in Fedora, Debian or Ubuntu linux. I have assumed that you have already installed the distribution and that you have a LAN card in your computer which you are connecting to the router/modem.

Before I start the explanations, here is an excellent introduction to using a Desktop computer with Linux:

In the steps, note that for your Dataone connection, you must use "[email protected]" as the username and your password. Note the absense of ".in" from the username; the username does NOT include this.

If you want to use your modem/router provided by your ISP (e.g. BSNL Dataone) in bridge mode, then you need a pppoe dialer in your OS. In Linux, the dialer is called pppoe dialer.

Connect your modem/router to your computer using a LAN cable (USB network connections are not reliable, stay away from them). In Linux, the LAN cards in your computer are named as eth0, eth1, etc. depending on which one is detected first. If you have only one LAN card, it will most probably be called eth0. If you have another, it will be eth1, and so on. If you have multiple cards, you need to find out which one is really eth0 and which one is really eth1 etc. (in Debian and Ubuntu, the configuration script will automatically detect the card which is connected to your ADSL modem/router). You can use trial and error to find this out.

* Account Setup:
Before doing the connection setup, you need:
a) your BSNL username and password (assume it is [email protected] sudo aptitude update
$> sudo aptitude install wicd

In Fedora, use yum (or pup?) to install it.

It will remove the older network manager applet. Wicd is the new generation network manager. Very user friendly and easy to configure. I think it can also make configuring pppoe connection very easy. Give it a shot.


In Debian based distros (e.g. Ubuntu), you may use either the pppoeconf package.

This can be installed from the installation CDs or DVD. On my computer, running Debian Etch, I have these packages installed for my ADSL connection:
$> dpkg -l ppp* | grep ^ii
ii ppp 2.4.4rel-4 Point-to-Point Protocol (PPP) daemon
ii pppconfig 2.3.15 A text menu based utility for configuring pp
ii pppoe 3.8-1.1 PPP over Ethernet driver
ii pppoeconf 1.12 configures PPPoE/ADSL connections
ii pppstatus 0.4.2-8 console-based PPP status monitor

Once you have the package installed, you use the pppoeconf command as root to do the setup. This script will automatically detect which interface in your computer is connected to the router/modem, and will continue and will ask you for the usename (our exampe: [email protected]), password and nameservers. It will ask you for MTU, leave it at 1452 (for pppoe connections, max can be 1492, IIRC). After the setup, you give the command:
#> pon dsl-provider
to start the connection, and
#> poff dsl-provider
to stop the connection.

This page has screenshots of the pppoeconf command and the setup in Debian:
This is a Ubuntu web site for these instructions:

You can also install the pppstatus package. It shows you the stats for your ppp connection (data speed, connection time, etc.) in a terminal. It is pretty neat really.

In Fedora, you may use either the Network GUI or the rp-pppoe-gui package.

Network GUI Method:
- In Fedora, go to: Desktop --> Administration --> Network, OR, just type the command "system-config-network" the shell prompt to get the same GUI (both of these methods will ask for root password). The window you will get will have title of "Network Configuration".
- From the toolbar of this new window, click on "New" button. You will get a window with title "Add new Device Type".
- In this new windoe, choose xDSL connection, click "Forward" and follow the prompt. It will ask you for the provider name (type anything. e.g. BSNL Dataone), your connection username ([email protected] in our example) and password.
- Once setup is complete, to test the connection, go back to the "Network Configuration" window (or open it again as specified in the first point above), and select the new connection and click on Activate button in the toolbar. Wait a few seconds and give the following commands in a terminal:
$> ping
$> ping

The first one if successfuly, will prove that the internet connection is working, the second one, if successful, will prove that your DNS nameserves are also working.

Then make sure that the device will become automatically active when the computer boots up by selecting this connection in the network configuration window and by editing its profile and by checking the option that tells the device to activate on boot ups. Also, give normal users the option of controlling this device.

- To disconnect, select the Deactivate button from the network configuration window.

This website also lists this method of configuring your ADSL connection on Fedora (with screenshots link at the bottom of the page):

rp-pppoe-gui Method:
rp-pppoe-gui package helps setup the adsl connection. You can installed this package by using the following command (if you are already connected to the internet; yes, I know this is a catch-22 situation, but please bear with me. Think about is, you could be able to connect using the modem/router in pppoe mode instead of using it in bridge mode!):
#> yum install rp-pppoe-gui

If you do not have connectivity when installing this package, then the best thing to do is to install it from your Fedora installation CD or DVD. Another option is to get the rpm file of the package from a friend and try to install that. This is done, as root, with teh command:
#> rpm -Uvh rp-pppoe-gui

(but I recommend the yum method or the method of installation from CD or DVD of Fedora).

Once you have the package, we can proceed as follows. Here is an example session of how the ads-setup command works:
#> adsl-set
Welcome to the ADSL client setup.� First, I will run some checks on

your system to make sure the PPPoE client is installed properly...


Enter your Login Name (default root): [email protected]


Enter the Ethernet interface connected to the ADSL modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethX, where 'X' is a number.
(default eth0): if you have only one LAN card, just press ENTER to accept the default

Do you want the link to come up on demand, or stay up continuously?
If you want it to come up on demand, enter the idle time in seconds
after which the link should be dropped.� If you want the link to
stay up permanently, enter 'no' (two letters, lower-case.)
NOTE: Demand-activated links do not interact well with dynamic IP
addresses. You might have some problems with demand-activated links.

Enter the demand value (default no):just press ENTER to accept the default


Please enter the IP address of your ISP's primary DNS server.
If your ISP claims that 'the server will provide dynamic DNS addresses', enter 'server' (all lower-case) here.
If you just press enter, I will assume you know what you are doing and not modify your DNS setup.
Enter the DNS information here:
Please enter the IP address of your ISP’s secondary DNS server.
If you just press enter, I will assume there is only one DNS server.
Enter the secondary DNS server address here:

enter your BSNL password here, twice
Please enter your Password:
Please re-enter your Password:


Please enter 'yes' (two letters, lower-case.) if you want to allow normal user to start or stop DSL connection (default yes):


Please choose the firewall rules to use. Note that these rules are very basic. You are strongly encouraged to use a more sophisticated firewall setup; however, these will provide basic security. If you are running any servers on your machine, you must choose 'NONE' and set up firewalling yourself. Otherwise, the firewall rules will deny access to all standard servers like Web, e-mail, ftp, etc. If you are using SSH, the rules will block outgoing SSH connections which allocate a privileged source port.

The firewall choices are:

0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN

Choose a type of firewall (0-2): 0

Start this connection at boot time

Do you want to start this connection at boot time?
Please enter no or yes (default no): yes
** Summary of what you entered **

Ethernet Interface: eth0

User name: [email protected]
Activate-on-demand: No
Primary DNS:
Secondary DNS:
Firewalling: NONE
User Control: yes
Accept these settings and adjust configuration files (y/n)? y

Adjusting /etc/sysconfig/network-scripts/ifcfg-ppp0
Adjusting /etc/ppp/chap-secrets and /etc/ppp/pap-secrets
(But first backing it up to /etc/ppp/chap-secrets.bak)
(But first backing it up to /etc/ppp/pap-secrets.bak)


After this, you can just enter "adsl-start" to start the connection (as a normal user) and "adsl-stop" to end the connection. It is that simple.
From the ads-setup script questions, you just need to give this info:
- dataone username
- interface: accept default (eth0) if you have only one interface. otherwise, give the name of the interface to which you have connected your modem/router's cable to your computer
- dial on demand: no
- dataone DNS nameserver
- dataone password
- normal users' user control: yes
- Firewalling: 0
- Use connection at startup: yes

Now, give the "adsl-start" command as normal user and verify your connection is working. Wait a few seconds and give the command:
$> /sbin/route -n

It should list a routing table. Then try:
$> ping
$> ping
The first ping test will show if your internet connection is working, the second will prove that your DNS nameservers are also working.

To stop the connection, use:
$> adsl-stop

To see the status of the connection, use:
$> adsl-status

That is it. Linux rocks!!

Good luck.


BSNL Dataone 1350UL
Thanks . This really helps


QUOTE(mammu @ Jan 29 2007, 02:16 PM) [snapback]77408[/snapback]
Hey please give info on Linux SUSE v.10[/b]

Apologies for long delay in replying. Been away and busy.

Anyhow, I do not have any experience in Suse whatsoever, so I am afraid I cannot help you there. However, I can say you are basically trying to make a pppoe connection. You need to search Google on how to do this in Suse. Hope that helps a bit.


BSNL 2 Mbps
No matter I am gonna install latest ubuntu v.6.10.So its possible to connect on it.Thanx a lot.


please tell me how to configure adsl modem (UT-300R2U) in linux through USB , i am using Mandriva , please give me the detail instruction and the required software for that and where does i get that


QUOTE(presi_4u @ Feb 11 2007, 03:53 PM) [snapback]79423[/snapback]
please tell me how to configure adsl modem (UT-300R2U) in linux through USB , i am using Mandriva , please give me the detail instruction and the required software for that and where does i get that[/b]

Connecting to your mode/router through USB is not a good idea in Linux. It will work only if you have the USB driver for that modem. The best choice is to use the network cable connection for this purpose.



Hey, I am glad to be a part of India Broadband Forum Family.

My problem is little peculiar, i am living in Punjab, Using BSNL Broadband Dataone DSL connection on 2MBPS Speed. I am accessing this on 'Huawei -Quidway:WA1003A' router (Modem). The device is fine while work on Wi-Fi , Lan or USB on all three in WINDOWS.

Please help, if any one know how to make the device able to dial the connection in Linux while on Wi-Fi ....i repeat on WI-FI.

I am Using Novell SuSE Linux 10 Enterprise Desktop with kernel : 2.6.16.x.x.x and Let me tell you that my Notebook's wifi card detects the router through wifi and notebook shows a strong connection with the router.

but i don't how to make dial up connection in Linux - which i usually do in Windows .....i hope you understand.

NOTE:-I have not configured my Modem (Router) to automatically dial to BSNL Telephone Exchange. I have created a internet dial up connection as (PPPoE). The SAME THING I WANT IN LINUX. , ANY HELP ?! !?


QUOTE(GB Singh @ Mar 2 2007, 11:59 AM) [snapback]81846[/snapback]
Please help, if any one know h
NOTE:-I have not configured my Modem (Router) to automatically dial to BSNL Telephone Exchange. I have created a internet dial up connection as (PPPoE). The SAME THING I WANT IN LINUX. , ANY HELP ?! !?[/b]

Hello GB,
Try this web page:

and let us know how it goes.

good luck.