mpolden / echoip

IP address lookup service
https://ifconfig.co
BSD 3-Clause "New" or "Revised" License
4.01k stars 526 forks source link

Allow request IP candidates to contain ports #174

Open Nextra opened 1 year ago

Nextra commented 1 year ago

This changes the flow of ipFromRequest to run all remoteIP candidates through net.SplitPortHost (if applicable) regardless of source, instead of treating http.Request.RemoteAddr as the lone special case.

The motivation behind this is that Azure Application Gateways add the X-Forwarded-For header as a comma separated list of IP:port instead of each entry just containing the IP address (ref), making it unnecessarily difficult to deploy echoip as-is to Azure Web App.