UMTS-Karte einrichten

Erfahren Sie hier, wie Sie einfach und relativ schnell eine UMTS-Datenkarte unter Linux konfigurieren können, um damit eine UMTS-Verbindung herzustellen. Die Einrichtung wird hierbei für eine PCMCIA- bzw. Cardbus-Karte mit dem Handynetz-Betreiber Vodafone beschrieben, ist aber leicht auf jedes andere Mobilfunknetz anpassbar.

Die Einrichtung einer UMTS-Datenkarte, beispielsweise einer Vodafone 3G/GPRS Datacard oder einer Vodafone Mobile Connect Card (Express) UMTS Broadband unter Linux ist nicht sonderlich schwer oder aufwendig, aber es geht wesentlich einfacher, wenn man weiß wie. Daher beschreibe ich nachfolgend die Einrichtung, welche ich selbst bereits unter Fedora Core 6, Fedora 7, 8, 9, 10, 11 und Red Hat Enterprise Linux 5 bzw. CentOS 5 so vorgenommen habe. Bei letzteren sind jedoch die Pfade leicht anzupassen. Sollten Sie eine ähnlich aktuelle Version einer anderen Distribution wie openSUSE oder Mageia im Einsatz haben, so sollte die Einrichtung genauso einfach und vermutlich nahezu gleich vonstatten gehen.

Da dieser Weg der Einrichtung auf das Kommandozeilen-Werkzeug WvDial setzt, müssen Sie das entsprechende Paket auf Ihrem System eventuell nachinstallieren - auf allen Fedora-basierenden Distributionen funktioniert dies wie folgt:

tux:~ # yum install -y wvdial

Anschließend legen Sie die Datei "/etc/udev/rules.d/48-UMTS.rules" an und fügen den nachfolgenden Inhalt ein. Der udev-Dienst führt nach dem Einschieben der PCMCIA- bzw. Cardbus-Karte in den passenden Slot des Laptops genau diese Befehle aus, welche die PIN freischalten und legt dabei auch die später noch benötigten Gerätedateien "/dev/umts" und "/dev/gsm" an.

BUS=="usb", KERNEL=="ttyUSB0", SYSFS{interface}=="Data Interface", SYMLINK+="umts", \
  RUN+="/usr/bin/wvdial --config /etc/wvdial-pin.conf"
BUS=="usb", KERNEL=="ttyUSB2", SYSFS{interface}=="Data Interface", SYMLINK+="gsm"

Die WvDial-Konfiguration, die nach dem Einschieben der PCMCIA- bzw. Cardbus-Karte diese mit der passenden PIN freischaltet, wird in der Datei "/etc/wvdial-pin.conf" vorgenommen. Daher wird in dieser Datei auch die PIN gespeichert; natürlich sollten Sie "1234" durch Ihre PIN ersetzen, damit das ganze funktioniert.

[Dialer Defaults]
Modem = /dev/umts
Baud = 460800
SetVolume = 0
Dial Command = ATDT
FlowControl = NOFLOW
Init1 = ATZ
Init2 = AT+CPIN="1234"

Die eigentliche Konfiguration von WvDial für eine UMTS-Verbindung wird in der Datei "/etc/wvdial.conf" vorgenommen und sieht beispielsweise wie folgt aus:

[ModemUMTS]
Modem = /dev/umts
Baud = 460800
SetVolume = 0
Dial Command = ATDT
Init1 = ATZ
Init2 = ATM0
Init3 = ATM0
FlowControl = NOFLOW

[Dialer umts]
Username = VFD2
Password = WAP
Phone = *99***1#
Stupid Mode = 1
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","web.vodafone.de"
Inherits = ModemUMTS

Die Beispieleinstellungen auf dieser Seite richten sich an Kunden des Mobilfunk-Anbieters Vodafone. Sofern Sie Kunde von T-Mobile, E-Plus oder o2 Germany sind, finden Sie die entsprechenden Einstellungen in der nachfolgenden Tabelle:

Einstellung T-Mobile Vodafone E-Plus o2
Username = ... / PAPNAME=... Beliebig oder "t-mobile" Beliebig oder "VFD2" eplus Beliebig oder leer
Password = ... Beliebig oder "tm" Beliebig oder "WAP" Beliebig oder "gprs" Beliebig oder leer
Init3 = AT+CGDCONT=1,"IP","..." internet.t-d1.de web.vodafone.de internet.eplus.de internet

Als nächstes wird das Netzwerk-Interface, über das der eigentliche Verbindungsaufbau auf Benutzerebene stattfindet, konfiguriert. Fügen Sie dazu die nachfolgende Konfiguration in die Datei "/etc/sysconfig/network-scripts/ifcfg-umts" ein.

IPV6INIT=no
ONBOOT=no
USERCTL=yes
PEERDNS=yes
TYPE=Modem
DEVICE=ppp0
BOOTPROTO=dialup
LINESPEED=460800
MODEMPORT=/dev/umts
IDLETIMEOUT=300
PROVIDER=umts
DEFROUTE=yes
PERSIST=no
WVDIALSECT=umts
MODEMNAME=ModemUMTS
DEMAND=no
PAPNAME=VFD2
AC=off
BSDCOMP=off
VJCCOMP=off
CCP=off
PC=off
VJ=off

Wenn Sie die Konfiguration des Netzwerk-Interfaces auch in den Netzwerk-Profilen verfügbar haben möchten, führen Sie nachfolgende Befehle aus:

ln -s /etc/sysconfig/network-scripts/ifcfg-umts /etc/sysconfig/networking/devices/ifcfg-umts
ln -s /etc/sysconfig/network-scripts/ifcfg-umts /etc/sysconfig/networking/profiles/default/ifcfg-umts

Anschließend wird PPP-Konfiguration für die UMTS-Verbindung in der Datei "/etc/ppp/peers/umts" eingetragen.

connect "/usr/bin/wvdial --remotename umts --chat 'umts'"

Zudem muss in den Dateien "/etc/ppp/peers/chap-secrets" und "/etc/ppp/peers/pap-secrets" die hier aufgeführte Zeile jeweils am Ende angefügt werden:

"VFD2"  *       "WAP"

Wenn Sie SELinux aktiviert haben, so wird dieses verhindern, dass der udev-Dienst die WvDial-Software ausführt und dadurch wird die Freischaltung der UMTS-Karte mit der PIN fehlschlagen. Um dies zu umgehen können Sie entweder SELinux deaktivieren oder eine Datei "udev_wvdial.te" mit dem nachfolgenden Inhalt erzeugen:

module udev_wvdial 0.1;

require {
        type var_lock_t;
        type udev_t;
        class dir { write remove_name add_name };
        class file { write read create unlink };
}

allow udev_t var_lock_t:dir { write remove_name add_name };
allow udev_t var_lock_t:file { write read create unlink };

Um das SELinux-Modul zu übersetzen und zu laden, führen Sie bitte die nachfolgenden Befehle aus.

checkmodule -M -m -o udev_wvdial.mod udev_wvdial.te
semodule_package -o udev_wvdial.pp -m udev_wvdial.mod
semodule -i udev_wvdial.pp

Der Aufruf von "semodule" sorgt dafür, dass das Modul in "/etc/selinux" so gespeichert wird, dass dieses auch nach dem nächsten Neustart des Systems wieder mitgeladen wird und Sie die Schritte nicht wiederholen müssen.

Diese oben ausgeführen Programme gehören zum Paket "checkpolicy", das dafür natürlich installiert sein muss. Sollte dies bei Ihnen nicht der Fall sein, so können Sie das Paket folgendermaßen nachinstallieren:

tux:~ # yum install -y checkpolicy

Nun können Sie mit dem Befehl "ifup umts" die UMTS-Verbindung aufbauen und mit "ifdown umts" diese anschließend beenden. Sofern Sie allerdings den NetworkManager verwenden, ist es jedoch empfehlenswert, dass Sie diese UMTS-Konfiguration in den NetworkManager mitaufnehmen, da ansonsten dieser Ihre UMTS-Verbindung unter Umständen recht schnell wieder abbaut. Als Benutzer von Fedora-basierten Distributionen können Sie, sofern Sie nicht den NetworkManager einsetzen oder diesen für die Zeit der UMTS-Benutzung deaktivieren, z.B. mit der Netzwerk-Gerätekontrolle dieses UMTS-Interface ebenfalls grafisch aktivieren und deaktivieren.

Sollte Ihre Karte zwischen UMTS und GPRS hin- und herwechseln, so kann es passieren, dass dabei die Internet-Verbindung abbricht und Sie diese erneut wieder aufbauen müssen. Es kann in sehr seltenen Fällen auch passieren, dass Sie diesen Schritt sogar mehrmals wiederholen müssen, bis Sie wieder eine Verbindung ins Internet haben. Und dieser (unter Umständen mehrmalige) Auf- und Abbau der Verbindung sollte zuerst geschehen, bevor Sie eventuell Ihre Konfigurationsdateien überprüfen.