logging发往Cirtix Netscaler的stream量的日志源IP

我试图让Netscalerlogging所有stream向Netscaler的stream量的源IP地址。 这可能吗?

为了清楚我不想将客户端IP转发到后端服务器,我想在Netscaler上的日志中logging到达Netscaler的所有stream量的源IP,然后将其发送到系统日志服务器。 如果这将是可能做一个特定的VIP是黄金。

谢谢

根据您希望logging的stream量types以及您正在使用的组件,您有一些不同的选项。

一切从以下开始:

创buildMessage Action (在System – > Auditing – > Message actions ),并使用以下expression式:

 CLIENT.IP.SRC 

您还必须定义log level消息的log level 。 我build议至less使用INFORMATIONAL级别,因为DEBUG会随着时间的推移生成大量的日志条目。

当然,可以向日志消息添加额外的数据。

其次,如果要将消息推送到外部系统日志服务器,则还应该添加系统日志服务器:

  • 进入System – > Auditing – > Syslog – > Servers并添加服务器。
  • 确保启用了"User Configurable Log Messages"选项。
  • 接下来,创buildlogging policy ,并将其设置为true

如果您正在使用内容切换,则可以通过在编辑策略时在下拉框中select适当的消息,将日志消息附加到内容切换策略。

如果您使用的是简单负载平衡,则可以创build响应方策略,策略expression式设置为true ,在下拉框中select日志消息,最后但并非最不重要的:将操作设置为NOOP

然后,您可以将响应方策略绑定到需要logging客户端源IP的负载均衡器。

注意:小心NAT,因为它可能混淆真实的客户端IP!

为了以典型的NetScaler方式来完成这个工作,可以使用IPFIX(NetFlow的更新版本),或者Citrix把它称为“AppFlow” – 这是一组在IPFIX中定义的模板。 你需要一些东西来收集它(Logstash的最新版本可以使用logstash-codec-netflow来做到这一点),但它会给你足够的信息来build立完整的前后端连接日志,而不仅仅是用于HTTP,还用于TCP。

尽pipe如此,还是有更多的道路select。

您也可以将其用于Web日志logging(即HTTP访问日志)。