Telefon dla nomada w pytaniach i odpowiedziach

Urząd Komunikacji Elektronicznej (UKE), chcąc zainicjować debatę na temat powszechnego wykorzystania VoIP, zwrócił się pod koniec maja br. o konsultacje środowiskowe. Wyniki tych konsultacji można obejrzeć na stronach UKE ( http://www.urtip.gov.pl/uke/index.jsp ). My także postanowiliśmy zabrać głos w tej dyskusji i wykorzystać pytania UKE do zaprezentowania czytelnikom NetWorlda niezwykle istotnych technicznych aspektów wdrażanej już masowo technologii Voice over IP.

Urząd Komunikacji Elektronicznej (UKE), chcąc zainicjować debatę na temat powszechnego wykorzystania VoIP, zwrócił się pod koniec maja br. o konsultacje środowiskowe. Wyniki tych konsultacji można obejrzeć na stronach UKE (http://www.urtip.gov.pl/uke/index.jsp ). My także postanowiliśmy zabrać głos w tej dyskusji i wykorzystać pytania UKE do zaprezentowania czytelnikom NetWorlda niezwykle istotnych technicznych aspektów wdrażanej już masowo technologii Voice over IP.

Jakie ograniczenia występują przy nomadycznym korzystaniu z VoIP? Czy, a jeżeli tak, to w jaki sposób z usług VoIP korzystać mogą użytkownicy, którzy znajdują się za NAT i/lub firewallem?

Najpierw wyjaśnijmy, co znaczy nomadyczne korzystanie z VoIP. Z greckiego nomăs, czyli koczownik, to osoba przemieszczająca się sezonowo z miejsca na miejsce. W kontekście telefonii IP oznacza to możliwość korzystania z jej usług niezależnie od miejsca w sieci, z którego nawiązujemy połączenie, czy rodzaju wykorzystywanej sieci (łącze stałe, radiowe). Przykładem takiej usługi jest znana od dawna funkcja "śledzenia" użytkownika find-me/follow-me.

Telefon dla nomada w pytaniach i odpowiedziach

Brak możliwości nawiązania połączenia zwrotnego w sieciach z NAT

Po podłączeniu telefonu IP do gniazdka przeprowadzany jest proces rejestracji urządzenia w serwerze połączeń/centrali IP PBX, natomiast w przypadku aplikacji VoIP urządzenie łączy się ze wskazanym w ustawieniach serwerem SIP Proxy. Niedogodnością pierwszego rozwiązania jest konieczność zabierania ze sobą aparatu. Dlatego wiele rozwiązań oferuje logowanie się użytkownika z dowolnego aparatu IP, na który następnie pobierane są ustawienia użytkownika, książka adresowa, a do tego terminala zostaje przypisany numer użytkownika (np. służbowy). Przykładowo, połączenie przychodzące do firmowej centrali na numer użytkownika automatycznie zostanie przekierowane na adres aparatu w sieci, pod którym ten pracownik jest aktualnie zalogowany.

Możliwość posiadania tego samego numeru niezależnie od miejsca podpięcia się do sieci daje nam gwarancję, że np. będąc w Londynie możemy odebrać telefon od "Krystyny z gazowni", która zadzwoniła na numer warszawski.

Może się jednak zdarzyć, że użytkownik będzie próbował nawiązać połączenie z sieci znajdującej się za ścianą ogniową lub serwerem NAT (Network Address Translation). Wówczas w pierwszym przypadku pakiety klienta VoIP mogą nie zostać przepuszczone przez zaporę. Najprostszą metodą jest otwarcie portów wykorzystywanych przez konkretne rozwiązanie VoIP. Pamiętać należy, że wykorzystywanych jest kilka portów zarówno dla protokołów sygnalizacyjnych (SIP, H.323, AIX), jak i do transmisji głosu (RTP).

Telefon dla nomada w pytaniach i odpowiedziach

Zapora z funkcją ALG w sieciach SIP

SIP i H.323 nie obsługują translacji adresów. Jeżeli na drodze połączenia VoIP znajduje się NAT, wówczas pakiety sygnalizacyjne będą zawierały adres prywatny użytkownika (nierutowalny) i nie będzie możliwe nawiązanie połączenia zwrotnego z klientem inicjującym. W przypadku SIP nagłówek wiadomości INVITE będzie zawierał pola "from" i "call-ID" z adresem prywatnym. Urządzenie odbiorcze, chcąc odesłać komunikat do nadawcy (z pola "from"), nie będzie mogło go dostarczyć i połączenie nie dojdzie do skutku. Dodatkowo pole "call-ID" jest kombinacją liczby losowej i nazwy lub adresu IP nadawcy.

Adresat wywołania nie wie, gdzie odesłać potwierdzenie nawiązania połączenia - adres zwrotny nie jest rutowalny.

Aby umożliwić korzystanie z VoIP użytkownikom za firewallem lub NAT, można wykorzystać:

  • STUN (Simple Traversal of UDP through NATs) (RFC 3489), umożliwia klientom za NAT wykrycie odpowiadającego im adresu publicznego. Klient STUN wysyła zapytania o swój adres do serwera STUN podpiętego do Internetu.

    - Przesyłanie połączeń w tunelach VPN, wówczas adresy prywatne klientów są widoczne i przesyłane w ramach sieci wirtualnej. Jeżeli połączenie VPN przechodzi przez NAT, wówczas VPN musi posiadać funkcję NAT traversal.

    - Zapory z funkcją ALG (Application Level Gateway). Bramka warstwy aplikacji funkcjonuje po stronie firewalla i pełni funkcję agenta B2BUA (Back-to-Back User Agent). Połączenia SIP nawiązywane są tylko do bramki ALG, natomiast ALG nawiązuje połączenia dalej, do sieci zewnętrznej - przekazywanie połączeń VoIP przez firewall. ALG może także modyfikować adresy IP w nagłówkach protokołu SIP - translacja NAT. Wiadomości SIP obsługiwane przez ALG nie mogą być szyfrowane.

  • TURN (Traversal Using Relay NAT) - działa podobnie jak STUN, z tym że serwer zewnętrzny TURN funkcjonuje w sieci publicznej jako przekaźnik pakietów pomiędzy klientami VoIP. Pozwala nawiązywać połączenia tylko z jednym klientem i przeznaczony jest dla NAT symetrycznych. Zalecany jedynie gdy nie można użyć serwera STUN.
  • ICE (Interactive Connectivity Establishment) - wykorzystuje mechanizmy STUN i TURN do wykrycia i zestawienia połączenia. To nowa propozycja, nad którą pracuje IETF (obecnie draft), wspierana przez Cisco i Microsoft. ICE analizuje, w jaki sposób urządzenia w sieci komunikują się ze sobą, a następnie wybiera odpowiednią metodę połączenia. Przed nawiązaniem połączenia agent inicjujący próbuje kolejno wszystkie dostępne adresy dla dostępnych interfejsów (IPv4, VPN, itd.). Następnie uzyskiwane są adresy publiczne dla każdego z adresów lokalnych za pomocą STUN i TURN. Zebrane dane służą do wyboru ścieżki o najmniejszej liczbie przeskoków lub najniższych kosztach połączenia.

Kolejną przeszkodą może być posiadanie zmiennego adresu IP, jak to jest np. w przypadku klientów neostrady TP SA. W momencie zmiany IP następuje zerwanie połączenia. Sposobem na uniknięcie tego problemu będzie zastosowanie mechanizmu Mobile IP (RFC 3344), na bieżąco monitorującego zmiany adresu. Mobile IP jest używany do budowy systemów telefonii Wi-Fi i WiMAX.

Innym ograniczeniem może być przepustowość sieci. Dla przykładu, pomimo nawiązania połączenia VoIP przez łącze radiowe Wi-Fi w publicznych punktach dostępu, straty pakietów i jitter, jakie mogą tam występować, a co za tym idzie jakość głosu, będą skutecznie uniemożliwiać zrozumienie naszego rozmówcy.

Programem automatycznie radzącym sobie ze standardowym blokowaniem portów lub NAT jest Skype, który dynamicznie dobiera wykorzystywane porty (np. port 80 wykorzystywany przez http).

Protokołem VoIP przystosowanym do pracy z serwerami NAT jest IAX (Inter-Asterisk eXchange), który jest wykorzystywany przez centralę open source Asterisk.

W jaki sposób jest identyfikowany użytkownik VoIP i jak sprawdzane są jego uprawnienia? Czy stosuje się szyfrowanie, certyfikaty, kanały VPN lub wsparcie sprzętowe?

Użytkownicy sieci VoIP autoryzowani są zwykle za pomocą loginu oraz hasła. Część systemów umożliwia logowanie z dowolnego terminala VoIP podłączonego do sieci, na który po uwierzytelnieniu abonenta pobierane są jego ustawienia, przypisywany jest numer telefoniczny oraz importowana jest książka adresowa. Umożliwia to korzystanie ze stałego numeru telefonicznego niezależnie od miejsca, w którym przebywamy.

Ze względu na to, że komunikaty SIP są w postaci tekstu jawnego, zaleca się wykorzystanie mechanizmu szyfrowania secureSIP (RFC 3261), wykorzystującego tunele TLS lub szyfrowania IPSec.

Do szyfrowania wiadomości wewnątrz pakietów SIP może być wykorzystywany S/MIME (Secure Multipurpose Internet Mail Extensions). Nie jest jednak popularny, gdyż wymaga wsparcia ze strony infrastruktury klucza publicznego PKI.

Po zalogowaniu serwer sprawdza uprawnienia klienta w swojej bazie danych/ pliku konfiguracyjnym.

Spotykane są również rozwiązania, gdzie identyfikacja abonenta (a właściwie aparatu) i jego uprawnienia identyfikowane są na podstawie numeru seryjnego i adresu MAC urządzenia (np. Livebox TP SA). Rozwiązania te są najmniej bezpieczne.

Klienci VoIP mogą korzystać także z połączeń chronionych w wirtualnych sieciach prywatnych VPN.

Najpopularniejszym zabezpieczeniem jest stosowanie funkcji skrótu MD5 (Message Digest), realizowanej pomiędzy agentem użytkownika a serwerem proxy SIP.

Skype oprócz weryfikacji nazwy i hasła pełni także rolę centrum certyfikacyjnego (Certificate Authority) dla swoich klientów, wydając im klucze i poświadczając ich ważność.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200