# HG changeset patch # User Yaroslav Zhuravlev # Date 1458048702 -10800 # Node ID 48615cf80e20fdd483f5cd0da06420cb5e60ecc8 # Parent 0da7c65fdae5af8287ebbc3eed00a1fc47e1c50f Documented the UDP proxy functionality. diff --git a/xml/en/docs/stream/ngx_stream_core_module.xml b/xml/en/docs/stream/ngx_stream_core_module.xml --- a/xml/en/docs/stream/ngx_stream_core_module.xml +++ b/xml/en/docs/stream/ngx_stream_core_module.xml @@ -9,7 +9,7 @@ + rev="11">
@@ -45,6 +45,11 @@ stream { server unix:/tmp/backend3; } + upstream dns { + server 192.168.0.1:53535; + server dns.example.com:53; + } + server { listen 12345; proxy_connect_timeout 1s; @@ -53,6 +58,13 @@ stream { } server { + listen 127.0.0.1:53 udp; + proxy_responses 1; + proxy_timeout 20s; + proxy_pass dns; + } + + server { listen [::1]:12345; proxy_pass unix:/tmp/stream.socket; } @@ -69,6 +81,7 @@ stream { address:port [ssl] + [udp] [backlog=number] [bind] [ipv6only=on|off] @@ -107,6 +120,11 @@ connections accepted on this port should +The udp parameter configures a listening socket +for working with datagrams (1.9.13). + + + The listen directive can have several additional parameters specific to socket-related system calls. diff --git a/xml/en/docs/stream/ngx_stream_proxy_module.xml b/xml/en/docs/stream/ngx_stream_proxy_module.xml --- a/xml/en/docs/stream/ngx_stream_proxy_module.xml +++ b/xml/en/docs/stream/ngx_stream_proxy_module.xml @@ -9,13 +9,13 @@ + rev="13">
-The ngx_stream_proxy_module module (1.9.0) allows passing -connections to another server over TCP and UNIX-domain sockets. +The ngx_stream_proxy_module module (1.9.0) allows proxying +data streams over TCP, UDP (1.9.13), and UNIX-domain sockets.
@@ -38,6 +38,13 @@ server { } server { + listen 53 udp; + proxy_responses 1; + proxy_timeout 20s; + proxy_pass dns.example.com:53; +} + +server { listen [::1]:12345; proxy_pass unix:/tmp/stream.socket; } @@ -211,6 +218,26 @@ protocol for connections to a pro + +number + +stream +server +1.9.13 + + +Sets the number of datagrams expected from the proxied server +in response to the client request +if the UDP +protocol is used. +By default, the number of datagrams is not limited: +the response datagrams will be sent +until the value expires. + + + + + on | off off diff --git a/xml/en/docs/windows.xml b/xml/en/docs/windows.xml --- a/xml/en/docs/windows.xml +++ b/xml/en/docs/windows.xml @@ -8,7 +8,7 @@
+ rev="3">
@@ -130,6 +130,10 @@ on Windows Vista and later versions due address space layout randomization being enabled in these Windows versions. + +The UDP proxy functionality is not supported. + +
diff --git a/xml/en/index.xml b/xml/en/index.xml --- a/xml/en/index.xml +++ b/xml/en/index.xml @@ -8,7 +8,7 @@
+ rev="54">
@@ -16,7 +16,7 @@ nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, -and a generic TCP proxy server, +and a generic TCP/UDP proxy server, originally written by Igor Sysoev. For a long time, it has been running on many heavily loaded Russian sites including @@ -272,17 +272,24 @@ and STLS support.
-
+
Generic proxying -with -SSL termination; -load balancing +of TCP and UDP; + + + +SSL termination +for TCP; + + + +Load balancing and fault tolerance; diff --git a/xml/ru/docs/stream/ngx_stream_core_module.xml b/xml/ru/docs/stream/ngx_stream_core_module.xml --- a/xml/ru/docs/stream/ngx_stream_core_module.xml +++ b/xml/ru/docs/stream/ngx_stream_core_module.xml @@ -9,7 +9,7 @@ + rev="11">
@@ -45,6 +45,11 @@ stream { server unix:/tmp/backend3; } + upstream dns { + server 192.168.0.1:53535; + server dns.example.com:53; + } + server { listen 12345; proxy_connect_timeout 1s; @@ -53,6 +58,13 @@ stream { } server { + listen 127.0.0.1:53 udp; + proxy_responses 1; + proxy_timeout 20s; + proxy_pass dns; + } + + server { listen [::1]:12345; proxy_pass unix:/tmp/stream.socket; } @@ -69,6 +81,7 @@ stream { адрес:порт [ssl] + [udp] [backlog=число] [bind] [ipv6only=on|off] @@ -106,6 +119,11 @@ listen unix:/var/run/nginx.sock; +Параметр udp конфигурирует слушающий сокет +для работы с датаграммами (1.9.13). + + + В директиве listen можно также указать несколько дополнительных параметров, специфичных для связанных с сокетами системных вызовов. diff --git a/xml/ru/docs/stream/ngx_stream_proxy_module.xml b/xml/ru/docs/stream/ngx_stream_proxy_module.xml --- a/xml/ru/docs/stream/ngx_stream_proxy_module.xml +++ b/xml/ru/docs/stream/ngx_stream_proxy_module.xml @@ -9,13 +9,13 @@ + rev="13">
-Модуль ngx_stream_proxy_module (1.9.0) позволяет передавать -соединения другому серверу по TCP и UNIX-сокетам. +Модуль ngx_stream_proxy_module (1.9.0) позволяет проксировать +потоки данных по TCP, UDP (1.9.13) и UNIX-сокетам.
@@ -38,6 +38,13 @@ server { } server { + listen 53 udp; + proxy_responses 1; + proxy_timeout 20s; + proxy_pass dns.example.com:53; +} + +server { listen [::1]:12345; proxy_pass unix:/tmp/stream.socket; } @@ -212,6 +219,26 @@ PROXY для соединений с проксируемым сервером. + +число + +stream +server +1.9.13 + + +Задаёт количество датаграмм, ожидаемых от проксируемого сервера +в ответ на запрос клиента +в случае, если используется протокол +UDP. +По умолчанию количество датаграмм не ограничено: +ответные датаграммы будут отправляться +до истечения значения . + + + + + on | off off diff --git a/xml/ru/docs/windows.xml b/xml/ru/docs/windows.xml --- a/xml/ru/docs/windows.xml +++ b/xml/ru/docs/windows.xml @@ -8,7 +8,7 @@
+ rev="3">
@@ -130,6 +130,10 @@ nginx/Windows работает как стандартное консольное приложение (не сервис) версиях Windows включена рандомизация адресного пространства. + +Проксирование по UDP не поддерживается. + +
diff --git a/xml/ru/index.xml b/xml/ru/index.xml --- a/xml/ru/index.xml +++ b/xml/ru/index.xml @@ -8,7 +8,7 @@
+ rev="54">
@@ -16,7 +16,7 @@ nginx [engine x]—это HTTP-сервер и обратный прокси-сервер, почтовый прокси-сервер, -а также TCP прокси-сервер общего назначения, +а также TCP/UDP прокси-сервер общего назначения, изначально написанный Игорем Сысоевым. Уже длительное время он обслуживает серверы многих высоконагруженных российских сайтов, таких как @@ -271,17 +271,24 @@ AUTH LOGIN/PLAIN/CRAM-MD5;
-
+
-Проксирование -с -SSL termination; -распределение нагрузки +Проксирование +TCP и UDP; + + + +SSL termination +для TCP; + + + +Распределение нагрузки и отказоустойчивость;