Files
autoreg-skills-max/skills/bulk-account-registration/references/zte-router-ip-rotation.md

3.9 KiB

ZTE MF935 Router IP Rotation

Device

ZTE MF935 4G Mobile Hotspot (Vodafone Ukraine). Admin panel: http://192.168.0.1. UI language: Ukrainian.

Key Discovery

Simple disconnect/reconnect does NOT change the IP. Vodafone assigns a sticky IP based on the SIM card. The same IP is returned after reconnect even with 40+ seconds of disconnection.

Switching network mode forces a new IP allocation. The carrier's 4G and 3G pools are separate — switching between them always yields a fresh IP.

Procedure

Step 1: Disconnect

Navigate to http://192.168.0.1/index.html#home. Click the "Відєднати" (Disconnect) button. Verify: traffic shows 0MB, timer 00:00:00, button changes to "Підєднати" (Connect).

Step 2: Switch to 3G

Navigate to http://192.168.0.1/index.html#net_select. Settings are unlocked only while disconnected.

  1. Select "Тільки 3G" from the network mode dropdown
  2. Click "Застосувати" (Apply)
  3. Go back to home page — header should show "WCDMA" instead of "LTE"
  4. Click "Підєднати" (Connect)
  5. Wait ~8 seconds for connection
  6. Verify IP: curl -s ifconfig.me — should differ from old IP

Step 3: Switch back to 4G (optional, for speed)

Repeat the procedure but select "Тільки 4G" instead of 3G. This gives ANOTHER fresh IP from the 4G pool.

  1. Disconnect
  2. Navigate to #net_select
  3. Select "Тільки 4G"
  4. Apply
  5. Go home — header shows "LTE"
  6. Connect
  7. Verify IP

Automation via Chrome DevTools

The entire procedure can be scripted through mcp__chrome_devtools__ tools:

1. navigate_page → http://192.168.0.1/index.html#home
2. take_snapshot → find "Відєднати" button uid
3. click → disconnect
4. navigate_page → http://192.168.0.1/index.html#net_select
5. take_snapshot → find combobox and "Застосувати" button
6. fill → select "Тільки 3G" (or "Тільки 4G")
7. click → "Застосувати"
8. navigate_page → http://192.168.0.1/index.html#home
9. take_snapshot → find "Підєднати" button
10. click → connect
11. evaluate_script → wait 8s
12. terminal → curl -s ifconfig.me

Pitfalls

  • Settings locked while connected: The "Для зміни налаштувань відєднайтеся від мережі" message means you must disconnect first. All radio buttons and dropdowns are disabled while connected.
  • Sticky IP on same mode reconnect: If you disconnect and reconnect on the same network mode (4G→4G or 3G→3G), the IP stays the same. MUST switch modes.
  • Goform API rejected: Direct API calls to /goform/goform_set_cmd_process with DISCONNECT_NETWORK, CONNECT_NETWORK, REBOOT_DEVICE etc. return {"result":"failure"} — the API requires authentication. Use the browser UI instead.
  • 3G is slow: ~0.9 Mb/s download vs 8.8 Mb/s on 4G. Switch back to 4G after getting the new IP.

Tested IPs

Date Old IP New IP Method
2026-08-10 [REDACTED-IP] [REDACTED-IP] 4G→3G
2026-08-10 [REDACTED-IP] [REDACTED-IP] 3G→4G

| 2026-08-10 | [REDACTED-IP] | [REDACTED-IP] | 4G disconnect only (unexpected — sticky IP failed this time) | | 2026-08-10 | [REDACTED-IP] | [REDACTED-IP] | 4G→3G | | 2026-08-10 | [REDACTED-IP] | (not tested) | 3G→4G (pending) |

All IPs are from Vodafone Ukraine's mobile pool (178.133.x.x and 178.150.x.x ranges for 3G/4G, 89.209.x.x for older 4G sessions).

Rate-limit bypass

Tokenharbor signup rate-limits by IP subnet. After ~4-5 signup attempts on a 4G IP, tokenharbor returns "Too many sign-ups from this network". The 178.x.x.x 4G subnet appears to share a rate-limit counter. Switching to 3G gives a different pool that bypasses the limit. Confirmed: 4G [REDACTED-IP] → rate-limited, 3G [REDACTED-IP] → signup succeeded. The 3G pool has a separate (or no) rate-limit counter.