Proxy farm na routerze OpenWRT: krok po kroku od zera do wyniku
Spis treści
- Wprowadzenie
- Wstępne przygotowanie
- Podstawowe pojęcia
- Krok 1: dlaczego openwrt dla mobilnych proxy
- Krok 2: co potrzebujesz (kompatybilny router, modem)
- Krok 3: instalacja openwrt
- Krok 4: konfiguracja modemu i wyjścia do sieci
- Krok 5: tryb raw-ip lub mostu
- Krok 6: podłączenie oprogramowania proxy
- Sprawdzenie wyniku
- Typowe błędy i rozwiązania
- Dodatkowe możliwości
- Faq
- Podsumowanie
Wprowadzenie
W tym przewodniku krok po kroku zbudujesz w pełni działającą farmę proxy na routerze z OpenWRT i modemami USB. W efekcie będziesz miał jeden lub kilka proxy HTTP(S) z autoryzacją, z których każdy korzysta z mobilnego kanału konkretnego modemu. Nauczysz się, jak poprawnie dobrać sprzęt, zainstalować OpenWRT, skonfigurować połączenie z siecią mobilną w trybach QMI lub MBIM, włączyć raw-IP w razie potrzeby, wdrożyć 3proxy, przypisać każdy proxy do swojego interfejsu i sprawdzić wynik standardowymi metodami. Dodatkowo dowiesz się, jak skalować konfigurację, automatyzować ponowne uruchamianie modemów i monitorować stabilność.
Przewodnik napisany jest dla zaawansowanych użytkowników, ale wszystkie kroki są szczegółowo opisane prostym językiem, bez pomijania oczywistych działań. Jeśli wcześniej nie pracowałeś z OpenWRT, nadal będziesz mógł powtórzyć instrukcję, wykonując krok po kroku. Dla doświadczonych czytelników dostępne są rozszerzone opcje, optymalizacje i sekcja z typowymi problemami.
Przed rozpoczęciem warto znać podstawowe rzeczy: jak wejść na interfejs webowy routera (LuCI), jak otworzyć klienta SSH i wprowadzać komendy, jak wymienić firmware, jak czytać logi systemowe. Wyjaśnimy kluczowe komendy i wskażemy, co klikać w interfejsie. Całość może zająć 3–6 godzin: więcej, jeśli po raz pierwszy flashujesz urządzenie i budujesz farmę z kilkoma modemami, i mniej, jeśli już masz OpenWRT i jeden modem.
Porada: Jeśli chcesz szybciej sprawdzić pomysł, zacznij od jednego modemu i jednego portu proxy. Gdy wszystko zadziała, skaluj do 2–8 modemów.
⚠️ Uwaga: Używaj proxy wyłącznie w granicach prawa swojego kraju i warunków operatorów telekomunikacyjnych. Ten przewodnik nie zawiera i nie zakłada obchodzenia blokad, nielegalnych praktyk ani ingerencji w sieci osób trzecich.
✅ Weryfikacja: Po zakończeniu całego przewodnika będziesz miał listę dostępnych proxy w formacie: host:port z loginem i hasłem, weryfikowanych przez przeglądarkę lub curl. Każdy proxy będzie wychodził do internetu przez swój mobilny interfejs i będzie miał osobny zewnętrzny adres IP od operatora.
Wstępne przygotowanie
Przed rozpoczęciem zbierz narzędzia, oprogramowanie i dostęp. Dzięki temu unikniesz przestojów i zbędnych ponownych uruchomień.
Wymagane narzędzia i dostęp
- Komputer lub laptop z portem Ethernet lub adapterem USB-Ethernet.
- Dostęp do routera przez kabel Ethernet (najlepiej bezpośrednio do portu LAN).
- Klient SSH do łączenia się z OpenWRT pod adresem 192.168.1.1 (na przykład wbudowany terminal Linux lub Windows Terminal). W interfejsie webowym używa się przeglądarki.
- Prawa administratora na routerze (root w OpenWRT).
Wymagania systemowe i zgodność
- Router z obsługą OpenWRT i USB 2.0 lub 3.0 do podłączania modemów. Dla 2–8 modemów użyj zewnętrznych aktywnych hubów USB z zasilaniem.
- Wolna pamięć flash w routerze wynosząca co najmniej 16 MB i RAM od 128 MB (dla kilku modemów i 3proxy — preferowane 256–512 MB).
- Jedna lub więcej kart SIM z aktywnym planem transmisji danych. Dowiedz się o APN u operatora.
- Modemy USB obsługujące QMI/MBIM/NCM lub tryb HiLink. Popularne modele: Quectel EC25/EP06/EM12, Huawei E3372 (Stick i HiLink), ZTE, Sierra Wireless. Dla stabilnej farmy lepsze są modemy QMI/MBIM.
Co należy pobrać i zainstalować wcześniej
- Obraz firmware OpenWRT dla Twojego modelu routera (sekcja Firmware Download na oficjalnej stronie OpenWRT). Wybierz wersję factory do zalania z fabrycznego firmware i sysupgrade do aktualizacji z OpenWRT.
- Lista pakietów: luci, luci-proto-qmi, luci-proto-mbim, luci-proto-ncm, uqmi, umbim, comgt-ncm, kmod-usb-net, kmod-usb-net-qmi-wwan, kmod-usb-net-cdc-mbim, kmod-usb-net-cdc-ncm, kmod-usb-serial-option, usb-modeswitch, 3proxy. Pokażemy, jak je zainstalować przez opkg.
- Edytor tekstu do edycji konfiguracji, na przykład wbudowany vi w OpenWRT lub lokalny edytor z kopiowaniem przez SSH.
Kopie zapasowe i plan przywracania
- Podłącz komputer do routera przez kabel Ethernet.
- Otwórz przeglądarkę i przejdź do 192.168.1.1. Jeśli OpenWRT jest już zainstalowany, wprowadź hasło, przejdź do System → Backup/Flash Firmware.
- Kliknij Generuj archiwum, aby pobrać kopię zapasową bieżącej konfiguracji.
- Zapisz archiwum na komputerze pod zrozumiałą nazwą i datą. Pozwoli to szybko wrócić do stanu roboczego.
⚠️ Uwaga: Przed flashowaniem upewnij się, że masz dostęp do procedury przywracania routera (na przykład tryb odzyskiwania lub TFTP). To uratuje urządzenie w przypadku nieudanej aktualizacji.
✅ Weryfikacja: Upewnij się, że plik kopii zapasowej został pobrany i otwarty jako archiwum tar, a w nim widoczne są konfiguracje. Sprawdź, że wiesz, jak wejść do odzyskiwania swojego routera według instrukcji producenta.
Podstawowe pojęcia
Kluczowe terminy prostym językiem
- OpenWRT — otwarte oprogramowanie dla routerów, dające pełną kontrolę nad siecią, pakietami i interfejsami.
- Mobilny modem — urządzenie USB, które łączy router z mobilną siecią operatorów (3G/4G/5G) i wydaje adres IP.
- QMI/MBIM/NCM — protokoły, dzięki którym modem komunikuje się z routerem. QMI i MBIM zazwyczaj są stabilniejsze i szybsze dla LTE, NCM często stosuje się z niektórymi Huawei/ZTE.
- raw-IP — tryb, w którym ramki danych są przesyłane bez nagłówków Ethernet. Dla wielu modemów QMI jest obowiązkowy; jego włączenie zwiększa kompatybilność.
- HiLink — tryb niektórych modemów, w którym sam modem wykonuje NAT i wydaje routerowi lokalny adres IP jak zwykła karta sieciowa. Łatwiejsze w uruchomieniu, mniej elastyczne.
- Proxy — program, który przyjmuje żądania na routerze i przesyła je do internetu. Skonfigurujemy proxy HTTP(S) z autoryzacją.
Jak to działa
Router na OpenWRT widzi jeden lub więcej modemów USB jako osobne interfejsy sieciowe. Każdy interfejs otrzymuje mobilny adres IP od operatora. Serwer proxy uruchamiany jest na routerze i konfigurowany tak, aby wychodzący ruch z określonego portu przechodził przez odpowiedni modem. W rezultacie masz zestaw adresów w formacie host:port, a każdy port odpowiada swojemu mobilnemu IP.
Co ważne przed rozpoczęciem
- Każdy modem będzie miał swój interfejs (na przykład wwan0, wwan1 itd.). Ich nazwy i numery mogą się różnić w zależności od kolejności podłączenia.
- Dla modemów QMI/MBIM często wymagany jest parametr raw-IP; bez niego połączenie się podnosi, ale ruch nie przechodzi.
- W trybie HiLink modem sam wykonuje NAT. To łatwiejsze, ale trudniej jest zagwarantować przypisanie portu proxy do konkretnej karty SIM w przypadku kilku modemów.
- Należy poprawnie skonfigurować strefy zapory i tablice routingu, aby podzielić ruch każdego proxy.
Porada: Jeśli planujesz więcej niż 3–4 modemy, przygotuj z góry aktywny hub USB z osobnym zasilaczem 5 V 3–5 A. To rozwiąże 90% problemów ze stabilnością i przeciążeniem zasilania.
Krok 1: Dlaczego OpenWRT dla mobilnych proxy
Celem etapu: Świadome potwierdzenie, że OpenWRT to odpowiednia platforma dla twojego zadania i zrozumienie, jakie korzyści ona daje właśnie dla mobilnych proxy.
- Sformułuj zadanie. Na przykład: potrzebujesz 2–6 niezależnych mobilnych proxy HTTP(S) do testów, analizy, integracji z twoimi usługami.
- Porównaj możliwości OpenWRT: elastyczne routowanie, wsparcie dla QMI/MBIM, zapora, pakiety, skrypty, cron, łatwa administracja LuCI i SSH.
- Oceń korzyści w porównaniu z zestawem PC: mniejsze zużycie energii, kompaktowość, niezawodność, automatyczne uruchamianie, niskie koszty skalowania.
- Zrozum ograniczenia: słabszy CPU niż w x86; mniej RAM i pamięci flash; bardziej ostrożne podejście do logów i monitorowania.
Ważne punkty: OpenWRT stabilnie działa przez miesiące bez restartów przy poprawnej konfiguracji. Łatwiej jest go klonować i aktualizować. Wiele mobilnych modemów jest testowanych właśnie z OpenWRT.
✅ Weryfikacja: Jeśli twoje cele to stabilne mobilne proxy HTTP(S) z kontrolą tras, OpenWRT jest odpowiednie. Jeśli potrzebujesz złożonych funkcji L7 i analizy DPI w czasie rzeczywistym, oceń CPU routera lub rozważ x86.
Krok 2: Co potrzebujesz (kompatybilny router, modem)
Celem etapu: Określić i przygotować kompatybilny router, modemy USB, hub, karty SIM i zasilanie, aby zbudować farmę bez wąskich gardeł.
Wybór routera
- Sprawdź, czy twój router jest wspierany przez OpenWRT w aktualnej wersji (stabilna gałąź 23.05.x lub nowsza). Rekomendacje: modele na chipsetach Mediatek lub Qualcomm z 128–256 MB RAM i portem USB.
- Jeśli planujesz 4+ modemów, wybierz urządzenia z USB 3.0 i gigabitowym Ethernetem. Wydajność CPU jest ważna dla 3proxy i NAT.
- Upewnij się, że router ma dostępny proces przywracania (Recovery, TFTP). To krytyczne dla bezpiecznego flashowania.
Wybór modemów
- Dla LTE preferowane są modemy z QMI/MBIM: Quectel EC25/EP06/EM12, Sierra Wireless, niektóre ZTE.
- Huawei E3372 występuje w wersjach Stick i HiLink. Do kontroli routingu Stick jest preferowany, ale HiLink jest łatwiejszy przy pierwszym uruchomieniu.
- Dowiedz się u operatora o wsparcie dla wymaganych pasm LTE/NR. Dla stabilności ważne są anteny i poziom sygnału.
Karty SIM i APN
- Aktywuj karty SIM z wyprzedzeniem i wyłącz kod PIN podczas pierwszej konfiguracji, aby wykluczyć blokowanie połączenia.
- Dowiedz się o APN u operatora: przykład apn.example. Jeśli wymagany jest użytkownik i hasło APN, przygotuj je.
Zasilanie i huby
- Użyj aktywnego hubu USB z zasilaniem do podłączenia 2+ modemów.
- Sprawdź kable: krótkie jakościowe kable USB zmniejszają straty i zakłócenia.
Porada: Oznacz fizycznie każdy modem i odpowiadający mu port huba. Dzięki temu szybciej powiążesz interfejsy wwan0, wwan1 z rzeczywistymi kartami SIM.
✅ Weryfikacja: Masz router z USB, kompatybilne modemy, aktywny hub, karty SIM z znanym APN i stabilne zasilanie. Wszystko gotowe do flashowania i konfiguracji.
Krok 3: Instalacja OpenWRT
Celem etapu: Zainstalować lub zaktualizować OpenWRT na routerze i zapewnić dostęp do interfejsu webowego LuCI i SSH.
Flashowanie z fabrycznego systemu operacyjnego
- Podłącz PC do portu LAN routera przez kabel.
- Otwórz przeglądarkę, wejdź do administracji fabrycznego firmware routera.
- Znajdź sekcję aktualizacji firmware. Wybierz obraz factory OpenWRT dla twojego modelu.
- Uruchom flashowanie. Nie odłączaj zasilania i poczekaj na ponowne uruchomienie.
Pierwsze logowanie do OpenWRT
- Otwórz 192.168.1.1 w przeglądarce. Ustaw hasło dla root przy pierwszym logowaniu do LuCI.
- Przejdź do System → Backup/Flash Firmware i upewnij się, że widzisz wersję OpenWRT oraz dostępne sekcje.
- Połącz się przez SSH: wprowadź w terminalu ssh root@192.168.1.1, zaakceptuj klucz serwera, podaj hasło.
Aktualizacja pakietów
- Wykonaj komendę: opkg update.
- Zainstaluj LuCI i wymagane protokoły (jeśli ich brak): opkg install luci luci-proto-qmi luci-proto-mbim luci-proto-ncm.
- Zainstaluj sterowniki i narzędzia: opkg install kmod-usb-net kmod-usb-net-qmi-wwan kmod-usb-net-cdc-mbim kmod-usb-net-cdc-ncm kmod-usb-serial-option usb-modeswitch uqmi umbim comgt-ncm.
⚠️ Uwaga: Po zainstalowaniu pakietów modemowych zrestartuj router komendą reboot. To zapewni poprawną inicjalizację urządzeń USB przez kernel.
✅ Weryfikacja: W LuCI widzisz System → Software z zainstalowanymi pakietami. Przez SSH komenda dmesg pokazuje, że system USB jest gotowy. Wersja OpenWRT jest aktualna, a dostęp do 192.168.1.1 stabilny.
Krok 4: Konfiguracja modemu i wyjścia do sieci
Celem etapu: Podłączyć modem USB, poprawnie go wykryć w systemie, stworzyć interfejs do dostępu do internetu i sprawdzić, że ruch działa.
Podłączenie pierwszego modemu
- Włóż kartę SIM do modemu. Do pierwszej konfiguracji użyj SIM bez kodu PIN.
- Podłącz modem do portu USB routera lub do aktywnego hubu USB, a hub do routera.
- Poczekaj 10–30 sekund. Wykonaj przez SSH: dmesg | tail — powinieneś zobaczyć linie o nowym urządzeniu USB i interfejsie sieciowym (na przykład wwan0 lub cdc-wdm0).
Stworzenie interfejsu QMI/MBIM/NCM w LuCI
- Otwórz LuCI i przejdź do Network → Interfaces → Add new interface.
- Wpisz nazwę, na przykład LTE1.
- W polu Protocol wybierz QMI Cellular (lub MBIM Cellular, lub NCM w zależności od modemu).
- Kliknij Prześlij. Wskaź urządzenie: dla QMI to zazwyczaj /dev/cdc-wdm0, dla MBIM — też cdc-wdm0, dla NCM — adapter sieciowy typu wwan0 lub usb0.
- Wpisz APN, na przykład apn.example. Jeśli wymagany jest login/hasło APN — podaj odpowiednie pola username/password.
- Wyłącz kod PIN na etapie pierwszego uruchomienia. Jeśli kod PIN jest wymagany, wpisz go w odpowiednie pole.
- Zapisz i zastosuj ustawienia (Save & Apply).
Sprawdzenie połączenia
- Otwórz Status → Overview. Znajdź swój nowy interfejs LTE1 oraz jego status. Powinien być uzyskany adres IP od operatora.
- Wykonaj przez SSH: uqmi -d /dev/cdc-wdm0 --get-data-status dla QMI lub mbimcli -d /dev/cdc-wdm0 -p --query-ip-configuration dla MBIM. Powinno pokazać connected i IP.
- Sprawdź wyjście do internetu: opkg update — jeśli zakończono pomyślnie, znaczy to, że router wychodzi w sieć.
Porada: Jeśli IP nie jest przydzielany, spróbuj zrestartować interfejs przyciskiem Restart w Network → Interfaces obok LTE1, a następnie sprawdź System → System Log na wiadomości o błędach APN lub rejestracji w sieci.
✅ Weryfikacja: Interfejs LTE1 ma adres IP, ping 8.8.8.8 lub pakiety opkg działają. Oznacza to, że modem i sieć są poprawnie skonfigurowane.
Krok 5: Tryb raw-IP lub mostu
Celem etapu: Włączyć raw-IP dla QMI/niektórych modemów NCM lub wybrać prostszy tryb mostu/HiLink, rozumiejąc kompromisy.
Kiedy wymagany jest raw-IP
- Wiele modemów QMI poprawnie przesyła dane tylko w trybie raw-IP. W przeciwnym razie interfejs się podnosi, ale pakiety nie przechodzą.
- W OpenWRT parametr raw-IP dla QMI ustala się w ustawieniach interfejsu lub urządzenia.
Jak włączyć raw-IP
- W LuCI otwórz Network → Interfaces → LTE1 → Edit → Advanced.
- Postaw znacznik lub ustaw parametr raw IP mode (jeśli dostępny). W różnych wersjach LuCI sformułowanie może się różnić.
- Zapisz i zastosuj. Zrestartuj interfejs LTE1. Jeśli parametr nie jest dostępny, ustaw przez UCI: uci set network.LTE1.raw_ip='1'; uci commit network; /etc/init.d/network restart.
Tryb mostu (HiLink)
- Jeśli modem jest HiLink, sam nawiązuje połączenie i wydaje routerowi adres przez DHCP na interfejsie takim jak eth1 lub usb0.
- Stwórz interfejs typu DHCP Client, a nie QMI/MBIM, podaj odpowiednie urządzenie, zastosuj konfigurację.
Ważne punkty: W HiLink łatwy start, ale trudniej zapewnić przypisanie portu proxy do konkretnego modemu przy kilku urządzeniach. QMI/MBIM daje lepszą kontrolę nad trasowaniem i wydajnością.
Porada: Dla farmy z 3+ modemami preferowany jest QMI/MBIM z raw-IP w razie potrzeby. Dla startu z modemem można użyć HiLink, a potem przejść na QMI/MBIM.
✅ Weryfikacja: Po włączeniu raw-IP ping i pobieranie list pakietów działają stabilnie. W System Log zniknęły błędy związane z formatami ramek lub czasami oczekiwania.
Krok 6: Podłączenie oprogramowania proxy
Celem etapu: Zainstalować i skonfigurować 3proxy tak, aby każdy port proxy wykorzystywał odpowiedni mobilny interfejs. Zrealizować autoryzację i podstawowe bezpieczeństwo.
Instalacja 3proxy
- Przez SSH zaktualizuj indeks pakietów: opkg update.
- Zainstaluj 3proxy: opkg install 3proxy.
- Upewnij się, że binarka została zainstalowana: which 3proxy powinien zwrócić ścieżkę, na przykład /usr/bin/3proxy.
Podstawowa konfiguracja jednego proxy
- Stwórz plik /etc/3proxy/3proxy.cfg. Jeśli plik nie istnieje, 3proxy utworzy go przy pierwszym uruchomieniu; zaleca się jednak jego ręczne stworzenie.
- Dodaj dane logowania: users user1:CL:pass1. To jest linia dla podstawowej autoryzacji HTTP.
- Ogranicz dostęp: allow user1. Ta zasada zezwoli na proxy tylko dla użytkownika user1.
- Określ adres wewnętrzny do nasłuchu: internal 0.0.0.0. To pozwoli na przyjmowanie połączeń na wszystkich interfejsach LAN.
- Określ zewnętrzny interfejs: external wwan0. Zmień na interfejs swojego modemu, na przykład wwan0 dla LTE1.
- Uruchom proxy HTTP na porcie, na przykład 3128: proxy -p3128 -a. Klucz -a włącza wsparcie dla autoryzacji.
- Zapisz plik i uruchom usługę: /etc/init.d/3proxy enable; /etc/init.d/3proxy start.
Kilka proxy dla kilku modemów
- Podłącz drugi modem i skonfiguruj drugi interfejs (na przykład LTE2 z urządzeniem /dev/cdc-wdm1 i nazwą wwan1).
- Dodaj konto dla drugiego proxy: users user1:CL:pass1, user2:CL:pass2.
- Stwórz oddzielny blok dla drugiego portu: allow user2; external wwan1; proxy -p3129 -a. W ten sposób port 3129 będzie wychodził przez wwan1.
- Restartuj 3proxy: /etc/init.d/3proxy restart.
Zapora i przypisanie trasy
- Upewnij się, że interfejsy LTE1, LTE2 znajdują się w strefie wan lub oddzielnej strefie z odpowiednimi maskaradami (NAT). W LuCI: Network → Firewall → Zones.
- Jeśli korzystasz z zewnętrznych interfejsów 3proxy, dodatkowa polityka routingu nie jest konieczna, ale zalecana dla pewności. Użyj routingu opartego na polityce na podstawie adresu źródłowego 3proxy lub tagów fwmark.
- Dla OpenWRT wygodny jest pakiet mwan3 do zarządzania wieloma interfejsami wan. Jednak dla farmy, gdzie ważne jest ścisłe przypisanie portu do interfejsu, użyj external w 3proxy i statycznych reguł ip rule.
Porada: Dla uproszczenia zacznij od mechanizmu external w 3proxy. Jeśli w przyszłości wymagane będzie szczegółowe routowanie TCP/UDP grup portów, dodaj zasady iptables mangle i ip rule.
✅ Weryfikacja: Połącz się z proxy na porcie 3128 z loginem user1 i hasłem pass1. Wykonaj curl -x http://user1:pass1@ROUTER_LAN_IP:3128 https://ifconfig.me i upewnij się, że zewnętrzny IP odpowiada interfejsowi LTE1. Następnie sprawdź port 3129 i porównaj IP dla LTE2.
Sprawdzenie wyniku
Celem etapu: Upewnić się, że wszystkie komponenty działają, każdy proxy wychodzi do internetu przez swój modem, a wydajność i stabilność są zgodne z oczekiwaniami.
Lista kontrolna
- Dostęp w LuCI i przez SSH do 192.168.1.1 działa.
- Interfejsy LTE1, LTE2 itd. są aktywne, otrzymują IP od operatora.
- 3proxy działa i nasłuchuje porty (na przykład 3128, 3129).
- Autoryzacja na proxy jest wymagana i przechodzi.
- Zewnętrzny IP na każdym porcie jest inny (dla różnych SIM) lub odpowiada potrzebnemu modemowi.
Jak przetestować
- Sprawdź porty: z PC wykonaj telnet ROUTER_LAN_IP 3128. Powinno zostać nawiązane połączenie TCP.
- Sprawdź zewnętrzne IP: curl -x http://user1:pass1@ROUTER_LAN_IP:3128 https://ifconfig.me i analogicznie dla 3129 z user2.
- Sprawdź prędkość: przez curl można pobrać plik testowy i ocenić przepustowość, lub użyć speedtest-cli przez proxy (o ile to możliwe).
- Sprawdź utrzymanie sesji: otwórz długie połączenie przez proxy i upewnij się, że nie przerywa się przez kilka minut.
Porada: Jeśli dostęp z zewnątrz nie jest planowany, ogranicz dostęp do proxy tylko do lokalnej sieci. W 3proxy można nasłuchiwać internal 192.168.1.1 i otworzyć potrzebne porty tylko w LAN.
✅ Weryfikacja: Zewnętrzne IP są rejestrowane i różnią się między portami. Pakiety opkg i pingi są stabilne. Logi 3proxy nie zawierają stałych błędów połączenia.
Typowe błędy i rozwiązania
- Problem: Interfejs LTE1 działa, ale internet nie działa. Przyczyna: Raw-IP dla QMI nie jest włączony lub błędny APN. Rozwiązanie: Włącz raw-IP w ustawieniach interfejsu, sprawdź APN, zrestartuj sieć.
- Problem: 3proxy działa, ale ruch przechodzi przez niewłaściwy modem. Przyczyna: Nie ustalono external dla właściwego interfejsu lub konflikt z zasadą routingu. Rozwiązanie: Określ external wwanX, zrestartuj 3proxy, w razie potrzeby dodaj ip rule według fwmark.
- Problem: Przy dwóch lub więcej modemach ruch czasami znika. Przyczyna: Niedobór zasilania hubu USB, przegrzanie modemu, słaby sygnał. Rozwiązanie: Aktywny hub, jakościowe kable, anteny, zmniejszenie liczby modemów na jeden hub.
- Problem: Nie można wejść do LuCI po flashowaniu. Przyczyna: Przeglądarka buforuje stare dane lub router nie zastosował adresu. Rozwiązanie: Otwórz w trybie incognito, sprawdź ustawienia sieciowe PC, w razie potrzeby zresetuj router zgodnie z instrukcją producenta.
- Problem: Proxy niedostępne z twojej sieci. Przyczyna: Firewall blokuje port lub 3proxy nie nasłuchuje na właściwym adresie. Rozwiązanie: Sprawdź internal w 3proxy.cfg, otwórz port w Zone LAN, zrestartuj serwis.
- Problem: Operator zmienia IP zbyt rzadko lub całkowicie go zablokował. Przyczyna: Szczegóły planu taryfowego, CGNAT, polityka operatora. Rozwiązanie: Ponowne połączenie interfejsu, okresowa zmiana IMSI nie jest przewidziana, wyjaśnij taryfę, użyj różnych SIMów, skonfiguruj wymuszone ifdown/ifup według harmonogramu.
- Problem: opkg nie instaluje pakietów. Przyczyna: Brak DNS/routingu lub zablokowane repozytoria. Rozwiązanie: Sprawdź DNS w Network → Interfaces → LAN, tymczasowo dodaj 8.8.8.8 jako serwer DNS, upewnij się, że masz dostęp do internetu.
Porada: Do diagnozowania problemów sieciowych użyj tcpdump na interfejsie wwan0. Zainstaluj tcpdump: opkg install tcpdump, następnie tcpdump -i wwan0 host 8.8.8.8, aby zobaczyć, czy ruch wychodzi.
Dodatkowe możliwości
Skalowanie na 3–8 modemów
- Oznaczaj interfejsy: nadaj imiona LTE1, LTE2, LTE3 w LuCI i śledź, który modem jest przypisany do którego urządzenia /dev/cdc-wdmX.
- Stwórz w 3proxy oddzielny blok dla każdego modemu: swojego użytkownika, swój port, swój external.
- Dostosuj zaporę: każda strefa WAN powinna pozwalać na ruch wychodzący i NAT. Jeśli używasz oddzielnych stref, sprawdź przekazywanie z LAN do każdej strefy.
Autoponowne połączenie i harmonogram
- Stwórz skrypt, który co N minut sprawdza zewnętrzne połączenie przez konkretny interfejs. Jeśli nie ma odpowiedzi, wykonuje ifdown LTE1; sleep 5; ifup LTE1.
- Dodaj zadanie do cron: w LuCI System → Scheduled Tasks dodaj linię w formie */15 * * * * /usr/bin/twoj_skrypt.sh.
- Loguj działania w /var/log/proxy-rotate.log, aby zobaczyć historię ponownych połączeń.
Monitorowanie i logi
- Włącz logowanie 3proxy do oddzielnego pliku. Ogranicz rotację logów, aby nie zapełnić pamięci flash.
- Użyj netdata lub collectd do monitorowania CPU, RAM, interfejsów. Instaluj pakiety ostrożnie, biorąc pod uwagę ograniczenia pamięci.
Optymalizacja wydajności
- Wyłącz zbędne usługi, które nie są potrzebne dla farmy, aby zwolnić RAM.
- Przy dużym obciążeniu włącz offloading tam, gdzie to możliwe i bezpieczne.
- Używaj krótkich i jakościowych kabli USB, sprawdź, czy modemy nie są throttlingowane przez przegrzanie. Jeśli to konieczne, dodaj wentylator.
Dostęp zewnętrzny i bezpieczeństwo
- Jeśli potrzebujesz połączenia z proxy z zewnętrznej sieci, skonfiguruj port forwarding na zewnętrznym routerze lub upewnij się, że masz publiczny IP na WAN.
- Dodaj obowiązkową autoryzację w 3proxy, ogranicz dostęp listą dozwolonych IP. Pracuj wyłącznie w granicach prawa.
Porada: Dla komercyjnego użycia i szybkiej skalowalności rozważ gotowe panele i usługi do zarządzania mobilnymi proxy. Na przykład, serwisy MobileProxy.space pomagają zautomatyzować rutynę, ale w tym przewodniku zbudujesz wszystko ręcznie dla pełnej kontroli.
Jeśli chcesz wrócić do szczegółów instalacji 3proxy, zobacz sekcję "Krok 6: Podłączenie oprogramowania proxy". Dla pytań dotyczących wyboru trybu dostępu do sieci modemu zajrzyj do "Krok 5: Tryb raw-IP lub mostu".
FAQ
- Ile modemów można podłączyć do jednego routera? Zależy od mocy systemu USB i zasilania. Praktycznie 2–4 modemy bez problemów, 6–8 z aktywnym hubem i dobrym zasilaniem.
- Jak zrozumieć, który interfejs odnosi się do którego modemu? Podłączaj modemy po jednym i obserwuj dmesg, następnie zmieniaj nazwy interfejsów w LuCI przez System → Network Devices, gdzie to możliwe. Oznaczanie kabli również pomoże.
- Czy raw-IP jest konieczne? Dla wielu QMI — tak. Jeśli połączenie się podnosi, ale ruch nie przechodzi, włącz raw-IP.
- Jak sprawić, aby każdy port proxy zawsze korzystał z tego samego modemu? W 3proxy wskaż external wwanX dla każdego bloku i unikaj dynamicznej zmiany modemów przez porty USB. Fizycznie zamocuj modemy.
- Czy można używać innego serwera proxy zamiast 3proxy? Tak, tinyproxy lub mitmproxy. Ale 3proxy jest lekki i zapewnia wygodne powiązanie external.
- Jak automatycznie zmieniać IP u operatora? Gwarancji nie ma, to zależy od operatora. Możesz restartować interfejs lub modem według harmonogramu, czasami zmienia się zewnętrzne IP. Wszystkie działania powinny być w granicach umowy z operatorem.
- Jak sprawdzić stabilność? Ping zewnętrznych węzłów, okresowe żądania curl przez każde proxy, monitorowanie logów i alerty w przypadku niedostępności.
- Co zrobić, jeśli mało miejsca w pamięci flash? Usuń niepotrzebne pakiety, przenieś logi do tmp lub na zewnętrzną pamięć, skorzystaj z minimalnych wersji OpenWRT.
- Czy można używać IPv6? Tak, jeśli operator wydaje prefiks IPv6. Skonfiguruj odpowiednie protokoły w interfejsie i upewnij się, że 3proxy obsługuje IPv6 w razie potrzeby.
- Czy to nadaje się do integracji z usługami analityki i parsowania? Tak, przy przestrzeganiu norm prawnych. Na przykład, dla własnych witryn i API. Przy przemysłowych obciążeniach kontroluj politykę operatorów i prędkości kanałów.
Porada: Przed dopuszczeniem do bojowego użytkowania przeprowadź długi test: 2–4 godziny ciągłych zapytań przez każdy port proxy z zapisami w logach i późniejszą analizą błędów i latencji.
Podsumowanie
Przeszedłeś całą drogę: przygotowałeś sprzęt, zainstalowałeś OpenWRT, skonfigurowałeś mobilny modem w trybie QMI/MBIM/NCM, w razie potrzeby włączyłeś raw-IP, wdrożyłeś 3proxy i sprawiłeś, że każdy port proxy korzystał ze swojego interfejsu. Nauczyłeś się weryfikować wyniki przez curl i logi, zrozumiałeś typowe błędy i dowiedziałeś się, jak skalować farmę do kilku modemów z automatycznym ponownym łączeniem, monitorowaniem i bezpieczeństwem. Teraz możesz wykorzystać swoją farmę proxy do legalnych zadań automatyzacji, testowania i integracji, a także rozwijać infrastrukturę dalej — dodawać nowe modemy, optymalizować trasy i logikę rezerwacji, konfigurować harmonogramy i monitorowanie.
Jeśli potrzebujesz zunifikowanej panele zarządzania i gotowych narzędzi do skalowania, sprawdź możliwości komercyjnych rozwiązań i usług, takich jak MobileProxy.space. Ale już teraz masz samodzielnie działającą budowę na OpenWRT z pełną kontrolą i zrozumieniem każdego węzła. Powodzenia w eksploatacji i poszerzaniu!