Существует ли способ скрыть адрес сервера nodejs при запросе от клиента js?
К примеру могу ли я используя js/nodejs (как вариант) написать такой код, при соединении клиента (js) с сервером(nodejs), чтобы клиент не смог получить адрес сервера (при открытии сокета и emit-ов)?
Посредник. Тогда будет цепочка клиент-сервер-сервер.
Клиент будет видеть адрес промежуточного сервера, но не вашего.
Как понимаете, задача посредника просто передавать сообщения слева на право и наоборот
Как вы себе это представляете? Ну а вообще нет, любой пакет уходящий с клиента можно отследить куда он идет, либо через веб-инспектор во кладке сеть либо через терминальную какой-нибудь утилиту.
Евгений: задача в том, чтобы дать многим клиентам на малых мощностях доступ к бюджетному серверу. Единственный вариант, который я пока вижу, это как вы и сказали прокси (внутри которого балансировщик Nginx) проксирующий далее запрос на реальный сервер (о котором никто не знает, и тоже с балансировщиком). Т.е. если на прокси у меня будет 10 серверов и на реальном сервере 10 серверов, и 1 из серверов прокси упадет, вместо него поднимется другой, и так же на реальном сервере, при этом прямые запросы на реальный сервер идут только от прокси. Может быть бред, но если знаете другой вариант, напишите. Тут решается сразу две задачи - сокрытие реального сервера, и балансировка нагрузки. Конечно в идеале я бы хотел вообще скрыть адрес сервера, не знаю, шифрованием каким-то, или иным путем, но видимо, это сделать невозможно.
lxfr: Чет немного запутался, но как я понял, вам все же нужен только nginx в качестве прокси, при этом реальный адрес сервера никто не сможет узнать. Больше я не знаю никак вариантов к сожалению.