lager:oeff_netze:voip_mjsip
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| lager:oeff_netze:voip_mjsip [2015/02/10 17:05] – richard | lager:oeff_netze:voip_mjsip [2025/11/19 16:15] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 2: | Zeile 2: | ||
| ====== Laborübung zu VoIP mit mjsip ====== | ====== Laborübung zu VoIP mit mjsip ====== | ||
| + | ===== Überblick zur Übung ===== | ||
| - | Für die Übung zu VoIP wird der SIP-Proxy | + | Der grundsätzliche Netzaufbau |
| {{ : | {{ : | ||
| - | ===== Vorbereitung ===== | + | Im Ordner |
| - | Der '' | + | |
| - | < | + | |
| - | Mögliche Ausgabe: | + | In den jeweiligen Ordnern '' |
| - | < | + | |
| - | Java(TM) SE Runtime Environment (build 1.7.0_65-b17) | + | |
| - | Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)</ | + | |
| - | Sollte keine '' | + | Das gesamte Paket ist so aufgebaut, dass sie auf einem PC laufen kann. Allerdings werden dann nur '' |
| - | < | + | |
| - | HINWEIS: Im Netzwerklabor ist eine geeignete | + | ^ Netzelement ^ '' |
| + | | Proxy | 127.0.0.2 | 5060 | | ||
| + | | Alice | 127.0.0.1 | 5070 | | ||
| + | | Bob | 127.0.0.1 | 5080 | | ||
| + | HINWEIS: Der Standard-Port für SIP ist '' | ||
| - | ===== mjsip SIP-Proxy | + | Die Kommunikation ist in zwei Phasen unterteilt. |
| + | | ||
| + | - Call-Auf-/ | ||
| - | ==== Download des Proxy ==== | ||
| - | Der Proxy selbst wird unter [[http:// | ||
| - | Weitere Informationen finden sich auf der Homepage der Entwickler. | ||
| - | In der ZIP-Datei befindet sich das Start-Skript '' | ||
| - | Durch öffnen und wieder speichern im richtigen Format kann dieses Problem gelöst werden. Hierzu öffnet man die ausgepackte Datei mit '' | + | ===== Der mjsip SIP-Proxy ===== |
| - | {{ : | + | |
| + | ==== Wichtige Proxy-Dateien ==== | ||
| + | Der Proxy liegt im Unterordner '' | ||
| + | < | ||
| - | Alternativ kann die Orginal-Datei durch die Folgende ersetzt werden: | + | Im Unterordner '' |
| - | <file bash proxy.sh> | + | |
| - | #!/bin/sh | + | |
| - | echo : | + | |
| - | echo : | + | |
| - | echo : ----------------------- SIP-Proxy ----------------------- | + | |
| - | echo : | + | |
| - | java -classpath lib/ | + | |
| - | </ | + | |
| - | Wie immer bei Skripten muss die Datei nach dem herunterladen durch das setzen des eXecute-Bits noch ausführbar gemacht werden. | + | ^ Datei ^ Aufgabe ^ |
| - | < | + | | '' |
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| - | Im Unterordner '' | ||
| - | Die im zip-Archive enthaltene | + | ==== Konfiguration des Proxy ==== |
| + | Die Datei '' | ||
| Vertiefender Hinweis: Auf der '' | Vertiefender Hinweis: Auf der '' | ||
| Hier die wichtigsten Parameter für die '' | Hier die wichtigsten Parameter für die '' | ||
| Zeile 56: | Zeile 49: | ||
| | '' | | '' | ||
| | '' | | '' | ||
| + | | '' | ||
| | '' | | '' | ||
| | '' | | '' | ||
| Zeile 61: | Zeile 55: | ||
| | '' | | '' | ||
| | '' | | '' | ||
| - | | '' | + | | '' |
| | '' | | '' | ||
| | '' | | '' | ||
| Zeile 69: | Zeile 63: | ||
| | '' | | '' | ||
| - | Die User werden in der Datei aaa.db (s. Parameter '' | + | Die User werden in der Datei '' |
| '' | '' | ||
| Zeile 89: | Zeile 83: | ||
| Zusätzlich gibt es noch die Möglichkeit einen Session-Border-Controller((SBC)) zu starten. Die Konfigurationsdatei ist '' | Zusätzlich gibt es noch die Möglichkeit einen Session-Border-Controller((SBC)) zu starten. Die Konfigurationsdatei ist '' | ||
| - | In der Datei '' | + | In der Datei '' |
| - | ===== Der Client ===== | + | ===== Der mjua-Client ===== |
| + | |||
| + | Aus dem '' | ||
| + | |||
| + | ==== Wichtige Client-Dateien ==== | ||
| + | Der Client liegt im Unterordner '' | ||
| + | < | ||
| + | bzw. | ||
| + | < | ||
| + | |||
| + | Will man eine eigene Konfigurationsdatei (hier: '' | ||
| + | < | ||
| + | |||
| + | Im Unterordner '' | ||
| + | |||
| + | Die folgende Tabelle enthält alle wichtigen Dateien und die jeweilige Aufgabe. | ||
| + | ^ Datei ^ Aufgabe ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | ==== Konfiguration der UAs ==== | ||
| + | Die Konfigurationsdateien sind so vorbereitet, | ||
| + | HINWEIS: Vor allem die IP-Adressen als Domänen sind hier anzupassen. | ||
| + | |||
| + | Die Datei '' | ||
| + | |||
| + | Hier die wichtigsten Parameter für die UAs '' | ||
| + | |||
| + | ^Parameter ^Bedeutung ^Beispiel ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | Vertiefender Hinweis: Auf der '' | ||
| + | |||
| + | ==== Audio- / Videokonfiguration ==== | ||
| + | Die Audio- bzw. Video-Übertragung wird mit den folgenden Parametern eingestellt. Geregelt ist die im [[https:// | ||
| + | Innerhalb des '' | ||
| + | |||
| + | < | ||
| + | # AUDIO CONFIGURATION | ||
| + | media=audio 3000 rtp/ | ||
| + | media_spec=audio 0 PCMU 8000 160 | ||
| + | media_spec=audio 8 PCMA 8000 160 | ||
| + | # Parameter-Description | ||
| + | # | ||
| + | # Parameter: media | ||
| + | # | ||
| + | # media= < | ||
| + | # < | ||
| + | # < | ||
| + | # < | ||
| + | # | ||
| + | # Parameter: media_spec | ||
| + | # | ||
| + | # media= < | ||
| + | # < | ||
| + | # < | ||
| + | # < | ||
| + | # < | ||
| + | # < | ||
| + | </ | ||
| + | |||
| + | Der Codec '' | ||
| + | |||
| + | ===== Aufgaben ===== | ||
| + | |||
| + | Protokollieren Sie den folgende Vorgänge mit: | ||
| + | |||
| + | - Anmeldung der Benutzer (einmal korrekt, einmal mit falschem Passwort, einmal mit falschem Benutzernamen) | ||
| + | - Verbindungsaufbau (einmal zu korrektem Ziel, einem zu nicht existierendem Ziel) | ||
| + | - Wiederanmeldung (Reregister) der Benutzer | ||
| + | - Überprüfen Sie auf welchem '' | ||
| + | |||
| + | **HINWEIS**: | ||
| + | < | ||
| + | # Zeigt nur die verwendeten Ports an | ||
| + | lsof -i -P -n | grep LISTEN | ||
| + | |||
| + | Ausgabe: | ||
| + | java 18254 keinpasswort | ||
| + | java 18425 keinpasswort | ||
| + | |||
| + | |||
| + | # Zeigt alle Verbindungen inkl. der IP-Adressen an | ||
| + | netstat -tulpn | grep LISTEN | ||
| + | |||
| + | Ausgabe: | ||
| + | (Es konnten nicht alle Prozesse identifiziert werden; Informationen über | ||
| + | nicht-eigene Processe werden nicht angezeigt; Root kann sie anzeigen.) | ||
| + | tcp 0 0 127.0.0.1: | ||
| + | tcp 0 0 127.0.0.1: | ||
| + | tcp 0 0 127.0.0.1: | ||
| + | tcp 0 0 0.0.0.0: | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | |||
| + | </ | ||
| + | |||
| + | Zusatzaufgabe (optional): Leiten Sie die Registrierung und Verbindungsauf-/ | ||
| + | |||
| + | Achten Sie insbesondere auf die Statusmeldungen. | ||
| + | |||
| + | Arbeiten Sie zunächst auf einem Rechner (Alice, Bob und Proxy). | ||
| + | |||
| + | Verwenden Sie anschließend pro Netzelement EINEN Rechner (also alle getrennt). Planen Sie Ihre IP-Adressen und passen Sie die jeweiligen Konfigurationsdateien an. | ||
| + | |||
| + | ===== Proxy-to-Proxy Signalisierung ===== | ||
| + | |||
| + | Die folgende Konfiguration kann für die Verbindung von zwei Domainen auf zwei unterschiedlichen Proxies verwendet werden. | ||
| + | |||
| + | < | ||
| + | domain_names=example.com example.net 192.168.33.119 | ||
| + | ... | ||
| + | domain_proxying_rules={domain=192.168.33.116, | ||
| + | </ | ||
| + | Dabei ist '' | ||
| + | ACHTUNG: Der Parameter '' | ||
| + | Auf den Clients kann der '' | ||
| + | |||
| + | ===== Alternative Clients ===== | ||
| + | ==== Linphone-Client | ||
| Die Konfiguration des Clients ist [[lager: | Die Konfiguration des Clients ist [[lager: | ||
| + | |||
| + | |||
| + | ==== YATE-Client ==== | ||
| + | Derzeit ist der Client nicht auf den Labor-PCs installiert. Es wird demnach eine VM benötigt. | ||
| Als Alternative zu diesem Client kann der '' | Als Alternative zu diesem Client kann der '' | ||
| < | < | ||
| - | Der Client wird im Untermenü '' | + | |
| + | Der '' | ||
| Die Software ist [[http:// | Die Software ist [[http:// | ||
| Zeile 102: | Zeile 241: | ||
| {{: | {{: | ||
| + | |||
| + | |||
| + | ===== Installation außerhalb des Labornetzes ===== | ||
| + | HINWEIS: Im Netzwerklabor ist eine geeignete '' | ||
| + | |||
| + | Der '' | ||
| + | < | ||
| + | |||
| + | Mögliche Ausgabe: | ||
| + | < | ||
| + | Java(TM) SE Runtime Environment (build 1.7.0_65-b17) | ||
| + | Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)</ | ||
| + | |||
| + | Sollte keine '' | ||
| + | < | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== mjsip-Quelle ===== | ||
| + | Für die Übung zu VoIP wird die Software '' | ||
| + | |||
| + | Die dort abgelegte Version 1.7 enthält in den Start-Scripten kleinere Fehler, daher wird hier ein Paket bereitgestellt, | ||
| + | |||
| + | ==== Korrekturen für die Start-Scripte ==== | ||
| + | |||
| + | Hier die Download-Links, | ||
| + | ^ Netzelement ^ Download ^ | ||
| + | | UA / Client | [[http:// | ||
| + | | Proxy | [[http:// | ||
| + | |||
| + | Weitere Informationen finden sich auf der Homepage der Entwickler. | ||
| + | |||
| + | In den ZIP-Datei befinden sich mehrere Start-Skripte z.B. '' | ||
| + | |||
| + | Durch öffnen und wieder speichern im richtigen Format kann dieses Problem gelöst werden. Hierzu öffnet man die ausgepackte Datei mit '' | ||
| + | {{ : | ||
| + | |||
| + | Alle notwendigen Dateien wurden korrigiert und in dem folgenden Archive zusammengepackt und liegt hier zum | ||
| + | |||
| + | **{{: | ||
| + | |||
lager/oeff_netze/voip_mjsip.1423587936.txt.gz · Zuletzt geändert: (Externe Bearbeitung)
