• 小老弟
    2019-09-28
    NGINX四层负载均衡+nginx七层负载均衡+后端web节点,
    四层ip 10.0.0.110
              172.16.1.110
    七层ip 172.16.1.120
    webip 172.16.1.130


    1.四层配置如下
    stream {
        upstream web {
            server 172.16.1.120:80;
        }

        server {
            listen 80 proxy_protocol;
            proxy_pass web;
            set_real_ip_from 127.0.0.1;
        }
    }


    2.七层配置如下:
    [root@gitlab conf.d]# cat proxy_ip_oldxu.com.conf
    upstream ip {
        server 172.16.1.130:80;
    }

    server {
        listen 80;
        server_name ip.oldxu.com;

        location / {
            proxy_pass http://ip;
        }
    }[root@gitlab conf.d]# cat proxy_ip_test.com.conf
    upstream ip {
        server 172.16.1.130:80;
    }

    server {
        listen 80;
        server_name ip.test.com;

        location / {
            proxy_pass http://ip;
        }
    }

    3.后端web配置如下:
    [root@es-node1 conf.d]# cat ip.test.com.conf
    server {
        listen 80;
        server_name ip.test.com;
        root /code;

        location / {
            index index.html;
        }
    }

    配置访问没有问题, 就是希望能透传客户端真实IP地址,使用了proxy_protocol也不行。




    展开

    作者回复: 你配错了。最外层四层nginx上不应加listen proxy_protocol,因为下游的协议没有使用proxy_protocol协议,对吧?从你的描述上看,应该是四层nginx首先发起proxy_protocol,所以你要加上proxy_protocol on;
    七层HTTP接收时要加上listent proxy_protocol

    
    
  • 海东青
    2019-08-29
    老师好 steam模块已经安装 并配置了监听tcp的端口 为什么重启nginx nginx服务器没有拉起来相应的tcp端口呢?

    作者回复: error.log上显示的错误是什么?

     1
    
  • 海东青
    2019-08-29
    老师好 stream模块已经安装 配置了steam
    
    
  • cuikt
    2019-06-03
    老师,你好,问下在nginx配置proxy protocol,是否客户端也需要支持这个协议呢?

    作者回复: nginx可以双向配置proxy protocol,如果是对下游客户端,那么客户端也需要配置使用该协议

    
    
  • 有点意思
    2019-04-01
    刚才感觉描述的不太清楚
    现在项目里用到nginx做反向代理tcp,当拿到应用层报文去处理的同时,想要将应用层报文保存成pcap文件 ,但是只有应用层的内容无法保存到pcap文件
    这时候是需要自己去构造一个以太网帧,还是从相关的nginx结构体里可以拿到这个以太网帧
    刚刚学习nginx,有点懵

    作者回复: 目前,据我所知,还没有任何nginx模块可以获取到以太网frame信息,只能你自己开发新的nginx模块去实现了。

    
    
我们在线,来聊聊吧