listen
NGINX SRT 模块中的 `listen` 指令指定 SRT 服务器用于接收传入连接的地址和端口。
Nginx SRT Module
语法listen address:port [backlog=number] [bind] [ipv6only=on|off] [reuseport];
默认值none
上下文
参数1+
说明
NGINX SRT 模块中的 listen 指令允许用户定义 SRT 服务器用于侦听传入 SRT 连接的地址和端口。需要注意的是,该指令至少需要一个参数,其中地址可以用标准格式给出(例如 IPv4 的 0.0.0.0:4321),并且还可以包含若干可选参数,例如 backlog、bind、ipv6only 和 reuseport,以便更细粒度地控制连接的管理方式。
在指定 listen 指令时,第一个参数是 address:port 的组合,用于告诉 NGINX 绑定到哪个接口和端口。可选的 backlog 参数可以定义待处理连接队列的大小,这对处理突发流量很有用。bind 选项表示是否专门绑定到所提供的地址,而 ipv6only 决定当套接字同时绑定到 IPv4 和 IPv6 地址时是否仅接受 IPv6 地址。最后,reuseport 允许多个套接字在相同的 IP 和端口上侦听,将传入连接分配给不同的 NGINX worker 进程,从而在高负载时提高性能。
该指令在 SRT 配置的 server 上下文中生效,对于为传入的 SRT 和 TCP 流量设置监听点至关重要,从而促进模块的双向数据传输能力。
配置示例
srt {
server {
listen 4321;
proxy_pass tcp://127.0.0.1:5678;
}
}⚠
确保所指定的端口未被其他服务占用,以避免绑定错误。
⚠
注意地址格式;使用不正确的格式可能会导致启动错误。
⚠
如果启用了 reuseport,请确保 NGINX 已编译为提供相应支持。
⚠
在使用多个 IP 地址时,如果未指定 bind 选项,可能会导致意外的绑定行为。