Вопрос по модулю stream - хочу проксировать TCP в UDP

Pavel Odintsov pavel.odintsov на gmail.com
Ср Июл 6 13:55:38 UTC 2016


Всем привет!

Очень нравится модуль stream - прекрасная фишка ;)

Но захотелось немного странного, имеется UDP сервер, к которому
хочется добавить "быстрый" TCP и TLS силами Nginx.

Но проблема в том, что  при вот такой конфигурации:
stream {
    upstream backend {
        server 127.0.0.1:1122 weight=5;
        server 127.0.0.22:1122 weight=1;
    }
    server {
        # Listen UDP
        listen 127.0.0.1:53 udp;
        # Listen TCP
        listen 127.0.0.1:53;

        # Listen TLS/SSL
        listen 127.0.0.1:853 ssl;
        proxy_connect_timeout 1s;
        proxy_timeout 3s;
        proxy_pass backend;
        ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
        ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
    }
}

Если запрос на Nginx приходит по UDP, то он отправляется на бэкэнд по
UDP. Если приходит по TCP либо SSL - он уходит по TCP на бэкэнд.

Мне вот нужно, чтобы связь с бэкэндом была сугубо по UDP, но как этого
достичь - не понимаю.

Помогите, пожалуйста.

Спасибо!

-- 
Sincerely yours, Pavel Odintsov


Подробная информация о списке рассылки nginx-ru