From eef7bcc5ba9756fb4908afe49502ee2b829577e3 Mon Sep 17 00:00:00 2001 From: Bjoern Heidotting Date: Wed, 3 Feb 2016 19:44:50 +0000 Subject: [PATCH] Update to r44152: Initial shuffle through Bluetooth chapter to improve flow. Some sections renamed. Flow is now using USB first followed by the various protocols and utilities. --- .../handbook/advanced-networking/chapter.xml | 398 +++++++++--------- 1 file changed, 198 insertions(+), 200 deletions(-) diff --git a/de_DE.ISO8859-1/books/handbook/advanced-networking/chapter.xml b/de_DE.ISO8859-1/books/handbook/advanced-networking/chapter.xml index e9f8995350..21682c6b25 100644 --- a/de_DE.ISO8859-1/books/handbook/advanced-networking/chapter.xml +++ b/de_DE.ISO8859-1/books/handbook/advanced-networking/chapter.xml @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDde:$ - basiert auf: r44143 + basiert auf: r44152 --> Bluetooth - - Übersicht - Bluetooth ermöglicht die Bildung von persönlichen Netzwerken über drahtlose Verbindungen bei einer maximalen Reichweite von 10 Metern und operiert im unlizensierten @@ -2422,10 +2419,12 @@ freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 EPS Die Bluetooth-PC-Card 3CRWB60-A von 3Com verwendet den &man.ng.bt3c.4;-Treiber. Serielle sowie auf UART basierende Bluetooth-Geräte werden von &man.sio.4;, &man.ng.h4.4; - sowie &man.hcseriald.8; unterstützt. Dieses Kapitel - beschreibt die Verwendung von - USB-Bluetooth-Adaptern. - + sowie &man.hcseriald.8; unterstützt. + + Dieses Kapitel beschreibt die Verwendung von + USB-Bluetooth-Adaptern in &os;. Weiterhin + werden verschiedene Bluetooth-Protokolle und Programme + vorgestellt. Die Bluetooth-Unterstützung aktivieren @@ -2471,8 +2470,7 @@ Number of SCO packets: 8 - Das Host Controller Interface - (<acronym>HCI</acronym>) + Suche nach anderen Bluetooth-Geräten HCI @@ -2573,8 +2571,182 @@ Reason: Connection terminated by local host [0x16] - Das Logical Link Control and Adaptation Protocol - (<acronym>L2CAP</acronym>) + Erstmaliger Verbindungsaufbau zwischen zwei + Bluetooth-Geräten (<foreignphrase>Pairing</foreignphrase>) + + + + Pairing + + + In der Voreinstellung nutzt Bluetooth keine + Authentifizierung, daher kann sich jedes Bluetoothgerät mit + jedem anderen Gerät verbinden. Ein Bluetoothgerät, wie + beispielsweise ein Mobiltelefon, kann jedoch für einen + bestimmten Dienst, etwa eine Einwählverbindung, eine + Authentifizierung anfordern. Bluetooth verwendet zu diesem + Zweck PIN-Codes. Ein + PIN-Code ist ein maximal 16 Zeichen langer + ASCII-String. Damit eine Verbindung zustande kommt, muss auf + beiden Geräten der gleiche PIN-Code + verwendet werden. Nachdem der Code eingegeben wurde, erzeugen + beide Geräte einen link key, + der auf den Geräten gespeichert wird. Beim nächsten + Verbindungsaufbau wird der zuvor erzeugte Link Key verwendet. + Diesen Vorgang bezeichnet man als + Pairing. Geht der Link Key auf + einem Gerät verloren, muss das Pairing wiederholt + werden. + + Der &man.hcsecd.8;-Daemon verarbeitet + Bluetooth-Authentifzierungsanforderungen und wird über die + Datei /etc/bluetooth/hcsecd.conf + konfiguriert. Der folgende Ausschnitt dieser Datei zeigt die + Konfiguration für ein Mobiltelefon, das den + PIN-Code 1234 + verwendet: + + device { + bdaddr 00:80:37:29:19:a4; + name "Pav's T39"; + key nokey; + pin "1234"; + } + + Von der Länge abgesehen, unterliegen + PIN-Codes keinen Einschränkungen. Einige + Geräte, beispielsweise Bluetooth-Headsets, haben einen festen + PIN-Code eingebaut. Die Option + sorgt dafür, dass der + &man.hcsecd.8;-Daemon im Vordergrund läuft. Dadurch kann + der Ablauf einfach verfolgt werden. Stellen Sie das entfernte + Gerät auf receive pairing + und initiieren Sie die Bluetoothverbindung auf dem entfernten + Gerät. Sie erhalten die Meldung, dass Pairing akzeptiert + wurde und der PIN-Code benötigt wird. + Geben Sie den gleichen PIN-Code ein, den + Sie in hcsecd.conf festgelegt haben. Der + Computer und das entfernte Gerät sind nun miteinander + verbunden. Alternativ können Sie das Pairing auch auf dem + entfernten Gerät initiieren. + + &man.hcsecd.8; kann durch das Einfügen + der folgenden Zeile in /etc/rc.conf + beim Systemstart automatisch aktiviert werden: + + hcsecd_enable="YES" + + Es folgt nun eine beispielhafte Ausgabe + des &man.hcsecd.8;-Daemons: + + hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4 +hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', link key doesn't exist +hcsecd[16484]: Sending Link_Key_Negative_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4 +hcsecd[16484]: Got PIN_Code_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4 +hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', PIN code exists +hcsecd[16484]: Sending PIN_Code_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4 + + + + Einwahlverbindungen und Netzwerkverbindungen mit + <acronym>PPP</acronym>-Profilen einrichten + + Das + Dial-Up Networking-Profil + (DUN) wird vor allem für Modems und + Mobiltelefone verwendet. Dieses Profil ermöglicht folgende + Szenarien: + + + + Die Verwendung eines Mobiltelefons oder eines + Modems durch einen Computer als drahtloses Modem, um sich + über einen Einwahlprovider mit dem Internet zu verbinden + oder andere Einwahldienste zu benutzen. + + + + Die Verwendung eines Mobiltelefons oder eines + Modems durch einen Computers, um auf Datenabfragen zu + reagieren. + + + + Der Zugriff auf ein Netzwerk über ein + PPP-Profil kann in folgenden Situationen + verwendet werden: + + + + Den LAN-Zugriff für ein einzelnes + Bluetooth-Gerät. + + + + Den LAN-Zugriff für mehrere + Bluetooth-Geräte. + + + + Eine PC-zu-PC-Verbindung unter Verwendung + einer PPP-Verbindung über eine emulierte + serielle Verbindung. + + + + Diese Profile werden unter &os; durch &man.ppp.8; sowie + &man.rfcomm.pppd.8; implementiert - einem Wrapper, der + RFCOMM Bluetooth-Verbindungen unter + PPP nutzbar macht. Bevor ein Profil + verwendet werden kann, muss ein neuer + PPP-Abschnitt in + /etc/ppp/ppp.conf erzeugt werden. + Beispielkonfigurationen zu diesem Thema finden Sie in + &man.rfcomm.pppd.8;. + + Das folgende Beispiel verwendet &man.rfcomm.pppd.8;, um + eine RFCOMM-Verbindung zu einem entfernten + Gerät mit derBD_ADDR 00:80:37:29:19:a4 auf + dem RFCOMM-Kanal DUN + aufzubauen. Die aktuelle + RFCOMM-Kanalnummer erhalten Sie vom + entfernten Gerät über SDP. Es ist auch + möglich, manuell einen RFCOMM-Kanal + festzulegen. In diesem Fall führt &man.rfcomm.pppd.8; keine + SDP-Abfrage durch. Verwenden Sie + &man.sdpcontrol.8;, um die RFCOMM-Kanäle + des entfernten Geräts herauszufinden. + + &prompt.root; rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup + + Der &man.sdpd.8;-Server muss laufen, damit ein Netzzugriff + mit dem PPP LAN-Profil + möglich ist. Außerdem muss für den + LAN-Client ein neuer Eintrag in + /etc/ppp/ppp.conf erzeugt werden. + Beispielkonfigurationen zu diesem Thema finden Sie in + &man.rfcomm.pppd.8;. Danach starten Sie den + RFCOMM PPP-Server + über eine gültige RFCOMM-Kanalnummer. + Der RFCOMM PPP-Server + bindet dadurch den Bluetooth-LAN-Dienst an + den lokalen SDP-Daemon. Das folgende + Beispiel zeigt, wie man den RFCOMM + PPP-Server startet. + + &prompt.root; rfcomm_pppd -s -C 7 -l rfcomm-server + + + + Bluetooth-Protokolle + + Dieser Abschnitt beschreibt die verschiedenen + Bluetooth-Werkzeuge, ihre Funktionen sowie weitere + Programme. + + + Das Logical Link Control and Adaptation Protocol + (<acronym>L2CAP</acronym>) L2CAP @@ -2655,10 +2827,11 @@ c2afe900 c2b53380 1 127 0 Yes OPEN Active RFCOMM sockets PCB Recv-Q Send-Q Local address Foreign address Chan DLCI State c2e8bc80 0 250 00:02:72:00:d4:1a 00:07:e0:00:0b:ca 3 6 OPEN - + - - Das <acronym>RFCOMM</acronym>-Protokoll + + Radio Frequency Communication + (<acronym>RFCOMM</acronym>) RFCOMM @@ -2692,86 +2865,9 @@ c2e8bc80 0 250 00:02:72:00:d4:1a 00:07:e0:00:0b:ca 3 6 OPENUnter &os; ist das RFCOMM-Protokoll im Bluetooth Socket-Layer implementiert. - + - - Erstmaliger Verbindungsaufbau zwischen zwei - Bluetooth-Geräten (<foreignphrase>Pairing</foreignphrase>) - - - - Pairing - - - In der Voreinstellung nutzt Bluetooth keine - Authentifizierung, daher kann sich jedes Bluetoothgerät mit - jedem anderen Gerät verbinden. Ein Bluetoothgerät, wie - beispielsweise ein Mobiltelefon, kann jedoch für einen - bestimmten Dienst, etwa eine Einwählverbindung, eine - Authentifizierung anfordern. Bluetooth verwendet zu diesem - Zweck PIN-Codes. Ein - PIN-Code ist ein maximal 16 Zeichen langer - ASCII-String. Damit eine Verbindung zustande kommt, muss auf - beiden Geräten der gleiche PIN-Code - verwendet werden. Nachdem der Code eingegeben wurde, erzeugen - beide Geräte einen link key, - der auf den Geräten gespeichert wird. Beim nächsten - Verbindungsaufbau wird der zuvor erzeugte Link Key verwendet. - Diesen Vorgang bezeichnet man als - Pairing. Geht der Link Key auf - einem Gerät verloren, muss das Pairing wiederholt - werden. - - Der &man.hcsecd.8;-Daemon verarbeitet - Bluetooth-Authentifzierungsanforderungen und wird über die - Datei /etc/bluetooth/hcsecd.conf - konfiguriert. Der folgende Ausschnitt dieser Datei zeigt die - Konfiguration für ein Mobiltelefon, das den - PIN-Code 1234 - verwendet: - - device { - bdaddr 00:80:37:29:19:a4; - name "Pav's T39"; - key nokey; - pin "1234"; - } - - Von der Länge abgesehen, unterliegen - PIN-Codes keinen Einschränkungen. Einige - Geräte, beispielsweise Bluetooth-Headsets, haben einen festen - PIN-Code eingebaut. Die Option - sorgt dafür, dass der - &man.hcsecd.8;-Daemon im Vordergrund läuft. Dadurch kann - der Ablauf einfach verfolgt werden. Stellen Sie das entfernte - Gerät auf receive pairing - und initiieren Sie die Bluetoothverbindung auf dem entfernten - Gerät. Sie erhalten die Meldung, dass Pairing akzeptiert - wurde und der PIN-Code benötigt wird. - Geben Sie den gleichen PIN-Code ein, den - Sie in hcsecd.conf festgelegt haben. Der - Computer und das entfernte Gerät sind nun miteinander - verbunden. Alternativ können Sie das Pairing auch auf dem - entfernten Gerät initiieren. - - &man.hcsecd.8; kann durch das Einfügen - der folgenden Zeile in /etc/rc.conf - beim Systemstart automatisch aktiviert werden: - - hcsecd_enable="YES" - - Es folgt nun eine beispielhafte Ausgabe - des &man.hcsecd.8;-Daemons: - -hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4 -hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', link key doesn't exist -hcsecd[16484]: Sending Link_Key_Negative_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4 -hcsecd[16484]: Got PIN_Code_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4 -hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', PIN code exists -hcsecd[16484]: Sending PIN_Code_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4 - - - + Das Service Discovery Protocol (<acronym>SDP</acronym>) @@ -2877,99 +2973,9 @@ Bluetooth Profile Descriptor List: Kontrollkanal abfragen: &prompt.root; sdpcontrol -l browse - + - - Einwahlverbindungen und Netzwerkverbindungen mit - <acronym>PPP</acronym>-Profilen einrichten - - Das - Dial-Up Networking-Profil - (DUN) wird vor allem für Modems und - Mobiltelefone verwendet. Dieses Profil ermöglicht folgende - Szenarien: - - - - Die Verwendung eines Mobiltelefons oder eines - Modems durch einen Computer als drahtloses Modem, um sich - über einen Einwahlprovider mit dem Internet zu verbinden - oder andere Einwahldienste zu benutzen. - - - - Die Verwendung eines Mobiltelefons oder eines - Modems durch einen Computers, um auf Datenabfragen zu - reagieren. - - - - Der Zugriff auf ein Netzwerk über ein - PPP-Profil kann in folgenden Situationen - verwendet werden: - - - - Den LAN-Zugriff für ein einzelnes - Bluetooth-Gerät. - - - - Den LAN-Zugriff für mehrere - Bluetooth-Geräte. - - - - Eine PC-zu-PC-Verbindung unter Verwendung - einer PPP-Verbindung über eine emulierte - serielle Verbindung. - - - - Diese Profile werden unter &os; durch &man.ppp.8; sowie - &man.rfcomm.pppd.8; implementiert - einem Wrapper, der - RFCOMM Bluetooth-Verbindungen unter - PPP nutzbar macht. Bevor ein Profil - verwendet werden kann, muss ein neuer - PPP-Abschnitt in - /etc/ppp/ppp.conf erzeugt werden. - Beispielkonfigurationen zu diesem Thema finden Sie in - &man.rfcomm.pppd.8;. - - Das folgende Beispiel verwendet &man.rfcomm.pppd.8;, um - eine RFCOMM-Verbindung zu einem entfernten - Gerät mit derBD_ADDR 00:80:37:29:19:a4 auf - dem RFCOMM-Kanal DUN - aufzubauen. Die aktuelle - RFCOMM-Kanalnummer erhalten Sie vom - entfernten Gerät über SDP. Es ist auch - möglich, manuell einen RFCOMM-Kanal - festzulegen. In diesem Fall führt &man.rfcomm.pppd.8; keine - SDP-Abfrage durch. Verwenden Sie - &man.sdpcontrol.8;, um die RFCOMM-Kanäle - des entfernten Geräts herauszufinden. - - &prompt.root; rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup - - Der &man.sdpd.8;-Server muss laufen, damit ein Netzzugriff - mit dem PPP LAN-Profil - möglich ist. Außerdem muss für den - LAN-Client ein neuer Eintrag in - /etc/ppp/ppp.conf erzeugt werden. - Beispielkonfigurationen zu diesem Thema finden Sie in - &man.rfcomm.pppd.8;. Danach starten Sie den - RFCOMM PPP-Server - über eine gültige RFCOMM-Kanalnummer. - Der RFCOMM PPP-Server - bindet dadurch den Bluetooth-LAN-Dienst an - den lokalen SDP-Daemon. Das folgende - Beispiel zeigt, wie man den RFCOMM - PPP-Server startet. - - &prompt.root; rfcomm_pppd -s -C 7 -l rfcomm-server - - - + Das Profil <acronym>OBEX</acronym>-Push (<acronym>OPUSH</acronym>) @@ -3029,10 +3035,10 @@ Success, response: OK, Success (0x20) wie der OBEX-Server gestartet wird: &prompt.root; obexapp -s -C 10 - + - - Das Profil Serial-Port + + Das Serial-Port Profil (<acronym>SPP</acronym>) Das Serial Port Profile (SSP) ermöglicht es Bluetooth-Geräten eine @@ -3059,15 +3065,12 @@ rfcomm_sppd[94692]: Starting on /dev/ttyp6... serieller Port verwenden werden. &prompt.root; cu -l ttyp6 + Problembehandlung - - Ein entferntes Gerät kann keine Verbindung - aufbauen - Einige ältere Bluetooth-Geräte unterstützen keinen Rollentausch. Wenn &os; eine neue Verbindung akzeptiert, wird versucht, die Rolle zu tauschen, um zum @@ -3080,19 +3083,14 @@ rfcomm_sppd[94692]: Starting on /dev/ttyp6... deaktiviert: &prompt.root; hccontrol -n ubt0hci write_node_role_switch 0 - - - - Bluetooth-Pakete anzeigen Verwenden Sie hcidump, - das Sie als Paket oder über den Port - comms/hcidump installieren können. + das als Paket Port comms/hcidump + verfügbar ist, um Bluetooth-Pakete anzuzeigen. Dieses Programm hat Ähnlichkeiten mit &man.tcpdump.1; und kann zur Anzeige der Bluetooth-Pakete in einem Terminal, oder zur Speicherung von Paketen in einer Datei (Dump) verwendet werden. -