Отже, розглянемо ще один варіант, що не вимагає ніякого додаткового софта, крім роутера з OpenWrt. Одним з очевидних способів обходу блокування з мінімальним використанням сторонніх коштів є наступна система:
плюси:
+ На проксі загортаються тільки звернення до заблокованих ресурсів, всі інші працюють як раніше;
+ Не потрібно взагалі нічого налаштовувати на всіх підключаються до роутера пристроях;
+ Ми особисто все контролюємо. )
мінуси:
- Незручність по ручному складанню списку блокованих ресурсів;
- Незручність пошуку живих і досить швидких апстрім-проксі;
- Необхідність установки зайвого софта на роутер і потенційно його часта переналагодження.
Для багатьох мінуси значно переважать всі можливі плюси. Проте розглянемо, як реалізувати викладене та, крім того, обійтися без установки власного проксі на роутері.
Ідея в тому, що раз ми піднімаємо у себе на роутері transparent-проксі і прозоро загортаємо на нього частину трафіку, щоб потім переправити його на інший проксі в інтернеті, то можна задатися питанням: а, власне, навіщо нам створювати каскад з проксі, якщо можна відразу знайти зовнішні проксі-сервера, що підтримують transparent-режим? Все, що потрібно - це знайти такий і відразу загорнути потрібний трафік туди, без локального проксі-сервера.
Для того, щоб трохи автоматизувати настройку і додати мінімальних зручностей, напишемо скрипт:
PS: При використанні типу підключення DHCP необхідно вказати опцію "option peerdns '0'" в / etc / config / network. щоб провайдерські DNS-сервери, одержувані з DHCP, повністю ігнорувалися.
PPS: Також може виникнути питання про те, як загорнути в прозорий проксі той трафік, який не проходить через роутер транзитом, а генерується софтом безпосередньо на роутері. Правила розглянуті для PREROUTING для цих цілей не підходять, а потрібно додати правила для OUTPUT:
У термінології OpenWrt, ймовірно, замість "-А OUTPUT" слід вказати більш коректний блок правил, що визначає саме OUTPUT зони WAN ...