Elektroda.pl
Elektroda.pl
X
Elektroda.pl
PCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

LTE - Routing HTTP na LTE Plusa

08 Lip 2013 22:55 1740 4
  • Poziom 7  
    Ostatnio wyczytałem, że Plus ma w ofercie neta przez LTE bez limitu danych dla komunikacji po HTTP (nie HTTPS).

    Nie wnikałem, czy to faktycznie prawda i nie testowałem tego. Jednak zastanawia mnie jedna kwestia. Załóżmy, że to prawda, czyli załóżmy, że oni faktycznie przepuszczają bez limitu cały ruch po HTTP na porcie 80, który po nagłówkach wygląda jak HTML.

    Tak się składa, że mam roota na maszynie z deklarowanym łączem 100MBit z OVH. Zastanawiam się, czy istnieje sensowna możliwość takiego spięcia tego, aby z jednej strony z kompa z wpiętym modemem LTE cała sieć działał całkowicie przezroczyście, ale faktycznie aby całość komunikacji była puszczona przez HTTP i poprzez ten mój serwer na OVH.

    Z tego co mi się wydaje, to można by to zrobić w ten sposób, że na OVH postawić soft, który słucha na porcie HTTP na połączenia. Połączenia w środku, w HTMLu ukrywają protokół wymiany danych. Po stronie Windowsa jest jakiś sterownik wirtualnej karty sieciowej, który przesyła pakiety do OVH.

    Sądzę, że mogłoby to działać.

    Pytanie, czy istnieje gotowy sort do tego?
  • PCBway
  • VIP Zasłużony dla elektroda
    Proxy, ewentualnie socks proxy.
  • PCBway
  • Poziom 7  
    Proxy (jak rozumiem chodzi o HTTP Proxy) czy SOCKS chyba nie do końca bezpośrednio nadają się do rozwiązania kwestii.

    Po pierwsze jak to wygląda od strony użytkownika końcowego? Wg mojej wiedzy oba rozwiązania wymagają specjalnej konfiguracji każdej aplikacji, która ma z nich skorzystać, czyli nie działają w sposób przezroczysty dla aplikacji, nie działają na poziomie systemu operacyjnego i wirtualnej karty sieciowej, a jedynie są aplikacjami, które pozwalają na tunelowanie w przypadku, jak aplikacja końcowa potrafi ich użyć. W szczególności jak puścić SSH albo VNC po HTTP proxy?

    Po drugie wydaje mi się, że te rozwiązania nie spełniają wymogów w zakresie komunikacji. Tak jak pisałem chodzi o ukrywanie dedykowanego protokołu wewnątrz HTTP[GET/POST] z Content-type: text/html. Z tego punktu wiedzenia HTTP Proxy zupełnie odpada ponieważ używa dedykowanych mechanizmów HTTP, które Plus jest w stanie bardzo łatwo odfiltrować. Nie wiem jak to wygląda w przypadku SOCKS, które faktycznie potrafią używać HTTP jako warstwy transportowej.

    Wracając zatem do pytania, jak sensownie można by zrealizować przedstawione zagadnienie?
  • Poziom 43  
    Jestem na 90% przekonany, że filtrowanie odbywa się po L7, a nie po portach - zatem postawienie tunelu po porcie 80 nadal będzie wykorzystywało limit. W praktyce nie kojarzę tej promocji, aczkolwiek pobieranie z chomików, rapidshare'ów i innych takich hostingów nie liczyłoby się do limitu, a na pewno się liczy.

    Teoretycznie (i to mocno!) dałoby się jakoś tak doklejać itd, że całość połączeń sieciowych mogłaby być kwalifikowana przez ten filtr L7 jako strona WWW, ale to byłoby łamanie regulaminu promocji, a nie możesz tego robić.
  • Poziom 7  
    Cytat z oferty:

    "Nielimitowane przeglądanie stron www [...] obejmuje: - Zwykłe, nieszyfrowane strony www - tekst, grafikę, animacje, skrypty"

    I dalej długa lista wyłączeń, np.
    - oglądanie filmów
    - pobieranie dokumentów/plików w formacie pdf, doc, xls, ppt i podobnych

    Jestem całkowicie przekonany, że tu nie chodzi o zwykłe filtrowanie ruchu na portach. Tu chodzi o filtrowanie ruchu z interpretacją zawartości, tak aby byli w stanie odróżnić plik PNG od PDF.

    Oczywiście dałoby się zastawić komunikację tak, aby całość szła jako żądania HTTP z ciałem w HTMLu, składającym się z "<HTML><BODY> i tu base64 z zawartością zależną od protokołu </BODY></HTML>". Alternatywnie można nawet przesyłać np. jednopikselowego PNG a protokół schować do wewnętrznego komentarza pliku...

    To, że można napisać soft, który coś takiego robi, to jestem całkowicie przekonany. Zastanawiam się jedynie, czy może jakiś istniejący soft coś takiego wspiera, lub chociaż można by łatwo zmodyfikować w tym kierunku?

    W szczególności nakreśliłem ideę rozwiązania opartą o wirtualny sterownik karty sieciowej dla Windows i bliżej nieokreślony soft dla serwera (np. Linuxa). Jeśliby się oprzeć o SOCKS, to czy istnieją jakieś komponenty, które realizują te punkty? Wtedy można by zmodyfikować tylko warstwę transportową gotowego rozwiązania? A inne pomysły? Jakie?

    Co do aspektów "regulaminowych" to nie rozważam tego aspektu.