网上文章的说法都是, 1.9.0版之后nginx开始具有TCP/UDP的代理转发功能, 但需要手动安装stream模块.
我用 nginx -V 命令(注意V是大写, 可查询nginx已安装模块)查了一下, 我的nginx是1.16.0版本, 并且已经安装了stream模块(命令输出包含 --with-stream ), 所以我就不用手动安装了.
首先要明确的一点, 关于TCP转发的配置, 是TCP层面的, 它和HTTP是同一层级, 并不是HTTP的下层.
所以其配置项目要放在nginx的顶级配置文件( /etc/nginx/nginx.conf )的顶级块里面, 和顶级配置文件中的http块同属一个层级. 注意不能放在 conf.d 文件夹下, 这个文件夹下的配置文件都在http块级以下.
在顶级配置文件( /etc/nginx/nginx.conf )中添加如下配置块:
实现, 监听8998端口, 转发8999端口(服务器上的程序实现TCP server在8999端口).
nginx -t 检查一下配置文件,
nginx -s reload 重新加载配置, 即可!
UDP的转发类似, 我这次的应用不需要, 也就没有测试试验, 不过先记录在此.
配置块如下:
基于TCP的应用层协议、与基于UDP的应用层协议分别有哪些?斜线前面的数字代表端口号,斜线后面表示tcp和udp,最后是协议名称,希望能帮到你!21/tcp FTP 文件传输协议22/tcp SSH 安全登录、文件传送(SCP)和端口重定向23/tcp Telnet 不安全的文本传送25/tcp SMTP Simple Mail Transfer Protocol (E-mail)69/udp TFTP Trivial File Transfer Protocol79/tcp finger Finger80/tcp HTTP 超文本传送协议 (WWW)88/tcp Kerberos Authenticating agent110/tcp POP3 Post Office Protocol (E-mail)113/tcp ident old identification server system119/tcp NNTP used for usenet newsgroups220/tcp IMAP3443/tcp HTTPS used for securely transferring web pagesTCP端口转发TCP Port Forwarding 是易于使用的应用程序,将使您能够从特定的TCP端口来的其他网络接口的流量重定向。该程序是能够处理在同一个工作站或一个远程,连接到不同的网络上的转发。
是发送到什么地址的,如果是本机的,那就由于协议栈转发,不经过网卡,抓不到。如果是发送给其他端的,但是你的wireshark没有在那个发送的网卡上监听,也抓不到的。
再检查一下吧。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)