【问题标题】:Behind AWS ELB : How to grab the Real IP from "netstat"?AWS ELB 背后:如何从“netstat”中获取真实 IP?
【发布时间】:2016-04-24 10:41:22
【问题描述】:

我在 2 个 Linux Web 服务器前使用 AWS Elastic Load Balancing (ELB)。但是(根据我的要求)我需要从 Web 服务器的角度了解真实 IP,尤其是当我使用 netstat 时。

我需要实时知道来自每个 IP(来自 NETSTAT)的传入连接数。所以基本上在 Linux (前面没有 ELB),下面的netstat 命令完美运行:

netstat -tn 2>/dev/null | grep :80

但是现在我只能看到ELB的内部IP;这让整个事情变得非常困难。

请问有什么解决办法?谢谢。

【问题讨论】:

  • 你为什么要这样做?您不能根据 x-forwarded-for 标头在您的应用程序中包含登录吗?

标签: amazon-web-services amazon-elb netstat clientip real-ip


【解决方案1】:

您可以从 ELB 访问日志中获取客户端源 IP,并使用EMR with Hive 来计算客户端请求从同一 IP 进来的次数。

【讨论】:

    【解决方案2】:

    如果您更喜欢“手动”方式:您可以使用 tcpdump 或 ngrep 并在您的网络服务器上搜索“x-forwarded-for”标头。

    如果您想要一个正确的方法:在您的应用程序中设置一些日志记录,使用 x-forwarded-for 标头记录客户端请求。

    无论您选择哪种方法,您都可以在您的机器上安装cloudwatch logs 代理来监控生成的日志。该代理负责日志轮换,将您的日志作为流(通过后台的 kinesis)发送到 AWS,然后您可以创建日志指标来监控您喜欢的日志中的任何内容,例如实时连接数,以及如果您愿意,甚至可以基于此配置警报。 然后,您可以使用您的指标创建仪表板,并拥有一个不错的监控面板,其中包括您的自定义日志指标。

    【讨论】:

      猜你喜欢
      • 2013-09-04
      • 2020-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 2011-11-10
      • 1970-01-01
      • 2013-01-07
      相关资源
      最近更新 更多