nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > Nginx TCP代理转发

Nginx 配置TCP代理转发的实现

作者:jeikerxiao

本文主要介绍了使用Nginx新版的stream方式,实现TCP/UDP代理转发,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

使用Nginx 新版的 stream方式,实现TCP/UDP代理转发。

在Nginx安装了 stream 模块后。

修改nginx.conf

在主配置文件下 nginx.conf 增加 stream配置。

如 nginx home 为 /opt/software/nginx

cd /opt/software/nginx/conf

vim nginx.conf

增加如下配置

stream {

    log_format proxy '$remote_addr [$time_local] '
                 '$protocol $status $bytes_sent $bytes_received '
                 '$session_time "$upstream_addr" '
                 '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';

    access_log /opt/software/nginx/logs/tcp-access.log proxy ;
    open_log_file_cache off;

	# 统一放置,方便管理
	include tcpConf/*.conf;
}

增加stream配置

创建tcp配置文件夹,方便以后统一管理配置文件:

cd /opt/software/nginx/conf

mkdir tcpConf

创建配置文件

cd tcpConf

vim tcp9004.conf

编辑如下:

upstream tcp9004 {
    server 118.178.188.188:8992;
}

server {
    listen 9004;
    proxy_connect_timeout 8s;
    proxy_timeout 24h;
    proxy_pass tcp9004;
}

测试重启Nginx

测试Nginx

cd /opt/software/nginx

./sbin/nginx -t

没有问题之后

重启Nginx

./sbin/nginx -s reload

端口监听

使用tcpdump监听tcp数据

安装tcpdump

yum install -y tcpdump

查看网卡

ifconfig

监听对应网卡上的端口

tcpdump -n -v -i eth1 port 8992

到此这篇关于Nginx 配置TCP代理转发的实现的文章就介绍到这了,更多相关Nginx TCP代理转发内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:
阅读全文