我在做某项目的时候,需将18网段的各种网络设备syslog日志经过一个18网段的中转机发送给17网段的三台日志服务器,那台中转机我是利用nginx负载均衡的功能实现数据转发的,但是到达日志服务器的时候数据来源地址均变成了转发机的地址了,直接在nginx配置文件中加载一行配置就行了,做个透明代理,具体配置如下:
upstream syslog_1514 {
server 17.1.1.1:1514 weight=1;
server 17.1.1.2:1514 weight=1;
server 17.1.1.3:1514 weight=1;
}
server {
listen 1514 udp;
proxy_pass syslog_1514;
proxy_bind $remote_addr transparent;
proxy_responses 0;
error_log /usr/log/nginx/logs/syslog_1514_err.log;
}
我这边是UDP的数据源地址改变,TCP的数据不变。
第一篇小文章到此结束,over。