Ответы пользователя по тегу Компьютерные сети
  • Перенаправление трафика сервера через сервер?

    @sigterm
    Тебе надо по большей части гуглить такую штуку, как маршрутизация и впринципе понимать как работают сети, роутинг, что такой ip, что такое маска подсети. Но в двух словах опишу ниже.

    Допустим есть ты, как клиент, который хочет куда-то сходить(послать запрос на какой-нибудь хост а глобальной или локальной сети). Пусть это будет google.

    Обычно схему представляют таким образом:
    Ты -> google
    Но так делают в основном для упрощения.
    В реале это может выглядеть так:

    Ты(пк, смартфон) -> домашний роутер(уровень локальной сети, L1) -> маршрутизатор провайдера в твоем городе(уровень WAN сети провайдера, L2) -> регинольный маршрутизатор твоей страны(уровень глобальной сети, L3) -> региональный маршрутизатор страны, в которой хостится конечный адрес (L3) -> маршрутизатор датацентра(уровень локальной сети датацентра, L2) -> целевой сервер(google, L1).

    L(1,2,3) - так я условно обозначил степень "локальности" сети.

    Так вот, фишка в том, что устройства уровнем ниже получают ip адрес(локальный), адрес главного шлюза("gateway"), и все это по протоколоу DHCP(в большинстве случаев) от устройств уровнем Выше.

    Например когда ты подключаешься к вифи, роутер говорит твоему устройству следующее: "Вот тебе айпи адрес(192.168.0.139), тебя будут через него узнавать участники сети, в том числе и я. Вот тебе мой айпи адрес(192.168.0.1), я предоставляю тебе эту сеть. По любым вопросам обращайся ко мне.", и отправляет в таблицу маршрутизации твоего устройства такую строчку:
    0.0.0.0/0 -> 192.168.0.1 - что означает: "отправлять пакеты на любые адреса (любые - т.е. в диапазоне от 1.1.1.1 до 255.255.255.255) на шлюз, который находится по адресу 192.168.0.1(адрес роутера).

    Теперь, когда это ясно, ты можешь просто менять главные шлюзы сети на каждой машине. Просто поменять записи в таблице марщрутизации, и запустив dhcp сервер на кажой из тех, кто будет "шлюзом", а потом подправить настройки фаервола, чтобы у тебя появился NAT. Просто чтобы это сделать, надо чуточку лучше понимать сети и ОС, с которой ты работаешь. И все. Это, на мой взгляд, проще чем поднимать впн-ы всякие.

    P.S. - в некоторых моментах я допустил определенные упрощения, т.к. текст ответа и так слишком длинным вышел.

    P.P.S. - я тебе дал несколько ниточек, тебе остается гуглить, учить сети и мехнизмы работы целевой ОС.
    Ответ написан
    1 комментарий