Other related documentation from the Linux Documentation Project:
Net HOWTO, previously named the NET3-4-HOWTO, the definitive, in-depth guide to various Linux networking topics.
Linux 2.4 Advanced Routing HOWTO. All the great features of Linux's sophisticated traffic management capabilities are explained here, including performance enhancing ideas relevant to DSL.
More on the 2.4 kernel packet filtering from The Netfilter Project at http://netfilter.samba.org/. Several good HOWTOs for the new features available with 2.4 kernels and iptables.
Check your security and see what ports are open at http://hackerwhacker.com/. This is one of the better sites for this. Some only test a relatively few ports.
SuSE's Linux PPPoE page is at http://www.suse.de/~bk/PPPoE-project.html. Good information on most of the available Linux PPPoE implementations.
Bob Carrick's definitive PPPoE site is at http://www.carricksolutions.com/. His Linux PPPoE page is at http://www.carricksolutions.com/linuxpppoe.htm. It has some other DSL related information as well. All OSes are covered.
The NTS EnterNet for Linux documentation can be found at http://support.efficient.com/KB/NTS/Docs/ENLinux13rel.html. This is a non-GPL'd PPPoE client that is distributed by some ISPs.
ATM on Linux: http://linux-atm.sourceforge.net/. Where to find the latest info on PPPoA and raw ATM connections.
FreeSwan, http://www.freeswan.org, is an IPSec and IKE VPN implementation for Linux.
VPN and Masquerading on Linux: http://www.tldp.org/HOWTO/VPN-Masquerade-HOWTO.html
PPTP-linux allows you to connect to a PPTP server with Linux. The home page is http://cag.lcs.mit.edu/~cananian/Projects/PPTP/.
Justin Beech's http://dslreports.com, a great site for anything and everything related to DSL. If it's not there, then there is a link to it. (Site runs on Linux.)
John Navas's Cable and DSL site, http://cable-dsl.home.att.net, has good general info, tweaks, troubleshooting, hardware info, etc. for all OSes.
TCP Performance Tuning tips: http://www.psc.edu/networking/perf_tune.html. Tips on Linux, and other OSes.
A great Linux security site is http://linuxsecurity.com. Good docs, and references for Linux. Another is http://linux-firewall-tools.com/linux/. Lots of info from Robert L. Ziegler, author of Linux Firewalls. Many links to other security related sites as well.
http://www.seifried.org/lasg/, The Linux Administrator's Security Guide by Kurt Seifried. Good tutorials on a variety of topics -- not just firewalls, but the big picture.
The Seattle firewall is a packet filtering firewall that can be used on a dedicated masquerading firewall machine (including LRP), a multi-function masquerade gateway/server or on a stand-alone Linux system. The ipchains project is located at http://seawall.sourceforge.net/. And for iptables: http://shorewall.sourceforge.net/.
Here a few pages dedicated to using Linux with specific providers. (I could use some submissions for more please.)
Verizon: http://www.panix.com/~dfoster/prog/linux/pppoe.html
Southwestern Bell: http://home.swbell.net/sdboyd56/DSL/connect1.html
BellSouth: http://personal.bellsouth.net/sdf/h/b/hburgiss/dsl/survival/linux.htm
HomeChoice (UK): http://www.maxuk.net/hc/faq.html. (This gets my vote for the strangest ADSL service anywhere.)
BT-Internet (UK): http://www.tldp.org/HOWTO/mini/BTI-PPP/index.html This covers both dial-up and ADSL connections.
German T-DSL: http://www.datenhighway.com/adsl/
France T�l�com's Netissimo: http://www.rhapsodyk.net/adsl/HOWTO/. Good information on setting up PPTP with Linux for Alcatel modems.
Austrian Highspeed Internetconnection & Linux HOWTO: http://www.members.aon.at/heimo.schoen/at-highspeed-howto.html.
Israel (various ISPs covered): http://vipe.technion.ac.il/~mulix/adsl-howto.txt
Now that you have a full-time connection, want a routable hostname for your computer? Dynamic DNS services can do this, even if your IP changes from time to time. Just a few of the many available services:
ADSL Deployment 'round the World Claims to have a complete list - looked accurate for my area - gives providers, prices, speeds, etc.
comp.dcom.xdsl FAQ. Actively maintained, and a great technical reference for DSL technologies.
comp.dcom.xdsl, DSL discussions, vents, and flames on Usenet. Good place to get technical questions answered that your ISP can't.
A dictionary of some of the jargon used in this Document, and in the telco and DSL industries.
Address Resolution Protocol. Converts MAC addresses to IP addresses.
A combination DSL modem that can be configured to act as either a bridge or a router.
Synonymous with "full rate" ADSL. Used to distinguish between full rate ADSL, CAP based ADSL and G.Lite. See DSL Family for more.
A lesser version of ADSL that has lower maximum speeds, and requires no splitter or filters. Not DMT compatible. See DSL Family in this HOWTO for more.
High bit rate DSL. See DSL Family in this HOWTO for more.
Incumbent Local Exchange Carrier. The Regional phone company that physically owns the lines. Examples: Bell Atlantic and Pacific Bell. FCC regulations are forcing the ILECs to open up their networks to independent providers. This is allowing an independents like Covad to offer competitive services. This is a good thing for consumers IMHO.
Interleaving is a tunable aspect of DMT/ADSL line encoding. It essential controls the 'interleaving' of bits in the transmission, and is used as a form of error correction. As interleaving increases, so does stability of marginal lines. It also increases latency.
Internet Protocol. Also, often used to simply refer to an IP address.
Internet Service Provider. Even full-time connections require an ISP to provide basic Internet services and connectivity.
Local Area Network. A network of computers that are segregated from the WAN (Wide Area Network, i.e. the Internet). Often using private, non-routable IP addressing, e.g. 192.168.1.1 or 10.0.0.1.
Link Control Protocol, one of the sub-protocols used by PPP, and derivative protocols like PPPoE. As the name sounds, it used by both the client and server to determine if the connection is viable. Either end may terminate the session if LCP indicates the connection is not responsive.
The two wire twisted pair from the telco Central Office that terminates at a customer location. For DSL, a "clean" copper loop within the distance limitations is required.
Media Access Control Address. Sometimes also called "hardware" address, it is a unique identifier of network devices and is an important aspect of some network environments.
Remote Access Multiplexer, a mini DSLAM. Typically with very few connections -- eight is common. Used for remote areas too far from a CO.
Maximum Transmission Unit, the largest packet size, measured in bytes, that a network can transmit. Any packets larger than the MTU are divided into smaller packets, or "fragmented", before being transmitted.
Network Address Translation is a means of allowing computers on a LAN to access the WAN while "masquerading" with the IP address of a host with a suitable address and configuration. With Linux this is called "ip-masquerading". Often used to share one public, routable IP address among hosts located on a LAN behind a masquerading proxy where the local addresses are private and non-routable.
Network Interface Device - The telco housing on the side of your house. Typically where the telco's responsibility ends, and the owner's begins. Also, sometimes called the "SNI", "TNI" or "ONI" or other descriptive acronyms.
Network Interface Card - An internal PC card that supports the required network interface. Often an ethernet 10/100baseT or an ATMF-25Mbps card in this context.
Network Service Provider. An ISP's upstream provider or backbone provider.
A fiber optic line capable of 155 Mbps.
Plain Old Telephone Service - The service that provides a single analog voice line (i.e. a traditional phone line).
Point-to-Point Protocol over ATM (RFC 2364) is one of the PPP protocols being used by some DSL providers. This is really a device specific driver, and in many respects quite different from PPPoE. A hardware device, i.e. a combination modem/router, is one alternative if this is the only option available to you.
Point-to-Point Protocol over Ethernet (RFC 2516). Another PPP protocol in use by providers. This one is more common, and there are several Linux clients available. See the Links section for more. Not to be confused with PPPoA (PPPoATM) since there are fundamental differences.
Used to refer to PPPoE and PPPoA collectively.
Rate Adaptive DSL. See DSL Family in this HOWTO for more.
Regional Bell Operating Company. The "Baby Bells". The U.S. phone companies that have had a state sponsored monopoly since the break up of AT&T.
Radio Frequency Interference. DSL is susceptible to RFI if in the right frequency range, and if close enough to the DSL signal. This can disrupt and consequently degrade the DSL signal. Unfortunately, DSL seems to operate in the frequency range of quite a few potential disrupting influences.
Shorthand for 'Receive Window', aka the TCP Receive Window, a tunable aspect of TCP network stacks.
Single Line DSL. Or, sometimes also "Symmetric DSL". See DSL Family for more.
Subscriber Network Interface - The Telco term for the phone wiring housing on the side of your house. It designates the point between the Telco side and the Inside Wire. This is also called the Demarcation Point. Sometimes called a "NID" also.
The passive device (low-pass filter) at or near the NID that splits the DSL signal into separate voice and data channels. Filtering is required for most DSLs that share a regular voice phone line (whether POTS or ISDN).
A DSL installation that does not require a splitter. For higher speeds, a RJ11 filter (sometimes called microfilters) is placed on every extension phone jack where an analog phone or other non-DSL device is used, thus filtering the DSL signal at the jack, rather than at the NID. For lower speeds, no filter is necessary. Without a filter or splitter, the DSL signal tends to cause audible interference on voice phones. G.Lite needs no splitter, nor filter, but this is the exception to the rule.
Small Office HOme
The speed as negotiated by the DSL modem and the telco's DSLAM. This represents the theoretical maximum speed of the connection before any networking protocol overhead is taken into account. Real world throughput is always something less than the modem's sync rate.
German Telekom's ADSL implementation. See DSL Family for more.
a.k.a DS1 - A digital dedicated line at 1.544 Mbps comprised of 24 channels, used for both voice (24 DS0s) and data.
a.k.a DS3 - T1's big brother, a digital dedicated line at 44.736 Mbps, used for both voice (672 DS0s or 28 DS1s) and data.
VPI is "Virtual PATH Identifier" and is part of an ATM cell header. VCI is "Virtual Circuit Identifier", also part of an ATM cell header which contains circuit information. Technically speaking, these are really remote VPI and VCI (RVPI, RVCI). They are both important configuration aspects for modems and routers attached to ATM networks. They must match what the provider is using. Frequently used VPI/VCI pairs include 0/32, 0/35 and 8/35.
Very high bit rate DSL. See DSL Family for more.
Video on Demand.
Voice over DSL.
Wide Area Network, a large publicly accessible network. For example, the Internet.
Used to refer to the entire DSL family of related technologies: ADSL, SDSL, IDSL, etc.
Xpeed X200 IDSL http://www.xpeed.com/Products/x200/x200_c.html (as of kernel 2.2.18)
Xpeed X300 SDSL http://www.xpeed.com/Products/x300/x300_c.html (as of kernel 2.2.18)
IteX PCI ADSL modem based on the Apollo chipset, also sold under various other brand names such as Dlink and ALH110. http://www.itexinc.com/.
Alcatel SpeedTouch USB (ADSL): http://www.speedtouchdsl.com/support.htm. The driver is kernel module and requires a 2.4 kernel. See the Appendix for driver information.
Eci Hi Focus ADSL Modem: http://eciadsl.sourceforge.net/. This project seems to support several modems and chipsets, including ez-usb an2131qc, gs7070 and gt3180.
See the IP Masquerade HOWTO , and Firewall HOWTO for more information. For 2.4 kernels see the Linux 2.4 Advanced Routing HOWTO. My experience is that Linux is more flexible and provides superior routing/firewalling performance. It is much less expensive than a commercial router -- if you find an old 486 machine that you may be using as a doorstop somewhere. There any number of brands of "DSL/Cable" routers on the market as well. These might be the way to go for pure ease of use, but lack the sophistication of what Linux can do.
What I did is setup a Linux router (Redhat Linux 5.0 on a i486) with two ethernet interfaces. One interface routes to the ISP subnet/gateway (eth0 in above example), and the other interface (eth1 above) goes to a hub (or switch) and then connects the LAN with private network addresses (e.g. 192.168.1.x). Using the private network addresses behind your router/firewall allows some additional security because it is not directly addressable from outside. You have to explicitly masquerade your private addresses in order to connect to the Internet from the LAN. The LAN hosts will access the Internet via the second NIC (eth1) in the Linux router. Just set their gateway to the IP address of the second NIC, and assign them addresses on the same network.
Caution Make sure your kernel is complied with IP forwarding and the IP forwarding is turned on. You can check this with 'cat /proc/sys/net/ipv4/ip_forward'. The value is "1" for on, and "0" for off. You can change this value by echoing the desired value into this file:
# echo 1 > /proc/sys/net/ipv4/ip_forward |
You will also need to set up "IP Masquerading" on the Linux router. Depending on your kernel version, this is done with ipfwadm (2.0), ipchains (2.2), or iptables (2.4). See the documentation for specifics on each. AND -- do not forget to have that firewall set up too!
There are also several projects that are devoted specifically to using Linux as a router, just for this type of situation. These are all-in-one solutions, that include security and various other features. Installation and configuration, is reportedly very easy. And these will run on very minimal hardware -- like a floppy drive only. The best known is http://www.linuxrouter.org. You might also want to look at http://www.freesco.org and http://www.coyotelinux.com. There is also http://www.clarkconnect.org/index.html, which is a similar concept but more full-featured and is designed to be monitored and configured with a set of Windows based utilities.