Posts Tagged ‘PPP’

Publiek IP-adres met ADSL?

Tuesday, March 2nd, 2010

Al vaker heb ik wat geschreven over het configureren van SpeedTouch ADSL-modems. Het is, ondanks de voornamelijk particuliere doelgroep, vrij aardig wat de apparatuur aan mogelijkheden biedt denk ik. Echter, in sommige gevallen wil je bewust géén gebruik maken van die mogelijkheden, bijvoorbeeld als je een serversysteem of router van het enige beschikbare publieke IP-adres van je ADSL-verbinding wil voorzien.

Er zijn verschillende oplossingen mogelijk, al dan niet met wat kunst- en vliegwerk. Helaas werken nagenoeg alle internetaanbieders in Nederland met PPP over ATM, waarmee het merendeel van de mogelijkheden wegvalt. Gelukkig blijft er een relatief eenvoudig te implementeren oplossing over! De moeite waard om over te schrijven, dacht ik zo. 😉

In mijn geval wilde ik graag het publieke IP-adres van onze ADSL-verbinding op kantoor direct kunnen toewijzen aan een serversysteem met Debian Linux.

Allereerst heb ik de instellingen van het ADSL-modem volledig gewist en vervolgens een minimaal subnet (/30) toegewezen. Binnen dit subnet bestaan maar twee IP-adressen: 172.29.98.1 voor het ADSL-modem en 172.29.98.2 voor het serversysteem.

Ter referentie, de CLI commando’s:

:system reset factory=yes proceed=yes

Het ADSL-modem zal opnieuw opstarten en is nu beschikbaar middels 10.0.0.138. Vervolgens:

:ppp relay flush
:eth flush
:atm flush
:ppp flush
:atm phonebook flush
:ip ipadd intf=LocalNetwork addr=172.29.98.1 netmask 255.255.255.252
:ip ipconfig addr=172.29.98.1 preferred=enabled primary=enabled

Maak nu opnieuw verbinding met telnet, maar nu met 172.29.98.2. Vervolgens om de oude IP-adressen te verwijderen en om DHCP uit te schakelen:

:ip ipdelete addr=192.168.1.254
:ip ipdelete addr=10.0.0.138
:service system modify name=DHCP-S state=disabled

Stel een wachtwoord in:

:user config name Administrator password VERYVERYSECRET

Maak een ADSL-verbinding aan met de juiste VPI/VCI en zet PPTP aan:

:atm phonebook add name=ADSL addr=0.35
:service system modify name=PPTP state=enabled

Sla tot slot de instellingen op:

:saveall

Het ADSL-modem is nu klaar voor gebruik! Installeer vervolgens op het serversysteem:

$ sudo apt-get install pptp-linux

De netwerkconfiguratie kan volstaan met:

$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 172.29.98.2
netmask 255.255.255.252

# The xDSL interface
auto dsl
iface dsl inet ppp
provider adsl

De PPP configuratie is verder erg eenvoudig:

$ sudo cat /etc/ppp/peers/adsl
noipdefault
defaultroute
replacedefaultroute
lock
user someuser
persist
holdoff 10
maxfail 0
noauth
noproxyarp
updetach
pty "pptp 172.29.98.1 --nolaunchpppd"

En tot slot de gebruikersnaam en wachtwoord:

$ sudo cat /etc/ppp/pap-secrets
someuser asdl VERYVERYSECRET

Na opnieuw laden van de netwerkinstellingen, verschijnt als resultaat ppp0 met daaraan het publieke IP-adres:

$ /sbin/ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:1.2.3.4 P-t-P:5.6.7.8 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:5067418 errors:0 dropped:0 overruns:0 frame:0
TX packets:4369810 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:4028098294 (3.7 GiB) TX bytes:1026059848 (978.5 MiB)

Bij eventueel verbreken van de verbinding zal deze automatisch opnieuw worden opgebouwd.