F5 记录会话日志

记录下F5日志记录方法
刚建立一个到F5的连接触发

#刚建立一个到F5的连接触发
when CLIENT_ACCEPTED {
#将客户端连接的VIP:Port赋值给vip
set vip [IP::local_addr]:[TCP::local_port]
}

F5成功建立到服务器之后触发

  • SERVER_CONNECTED事件仅表示TCP连接已经建立,但还没有数据交换

  • 当启用了SNAT Map(或SNAT Automap)功能时,SERVER_CONNECTED事件中的[IP::client_addr]将显示原始客户端的IP地址,而不是SNAT转换后的地址。SERVER_CONNECTED事件是在TCP连接建立时触发的,此时SNAT转换尚未发生

#成功建立到服务器连接之后触发
when SERVER_CONNECTED {
#赋值客户端源地址
set client "[IP::client_addr]:[TCP::client_port]"

#赋值后台服务器地址
set node "[IP::server_addr]:[TCP::server_port]"

#记录seflip
set selfip "[IP::local_addr]:[TCP::local_port]"

#记录日志
log local0. "Client $client -> VIP: $vip ->Snat: $selfip -> Node: $node"

Client 192.168.1.1:35800 -> VIP: 100.1.1.100:9090 ->Snat: 10.10.10.10:62000 -> Node: 100.1.1.110:9090
}


获取SNAT Automap转换后的地址

  • 使用[IP::client_addr]变量。这个变量在HTTP_REQUEST事件中通常表示经过SNAT转换后的客户端IP地址
  • [IP::translated_src_addr]变量。这个变量会返回SNAT转换后的源地址,即使在SNAT转换发生在HTTP_REQUEST事件之前
    HTTP请求到达后端服务器之前触发HTTP_REQUEST事件
when HTTP_REQUEST {
    # 获取经过SNAT转换后的源地址
    local translated_src_addr = [IP::translated_src_addr]
    #如果translated_src_addr为空,则回退到使用client_addr
    if { [IP::translated_src_addr] == "" } {
        set translated_src_addr [IP::client_addr]
    }
    # 记录日志
    log local0. "SNATTranslated Source Address: $translated_src_addr"
}
  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值