1

I'm trying to track down an elusive issue where a particular URL refuses to work. My investigations so far suggests there's some kind of DPI firewall/proxy/whatever between the client and server that looks at the path of the request and refuses based on that, and I'd like to known where that one is so I know who to contact to resolve the issue. In short

curl http://server/path   # FAILS with HTTP 401 Access Denied
curl https://server/path  # WORKS
(client on another network)# curl http://server/path  # WORKS
curl http://server/another_path # WORKS

So I'm wondering if there is some kind of traceroute-like tool that would work with HTTP. Basic traceroute doesn't work, because I can't tell traceroute to send a well-formed HTTP request with the particular path that is causing problems. I found https://github.com/watson/http-traceroute but that tracks only HTTP redirects, and doesn't help with this particular issue. Any ideas?

EDIT No, the server is not managed by me. It's a publicly accessible server managed by another organization entirely.

janneb
  • 3,841
  • 19
  • 22
  • Are you the administrator of the "server" in question? – Nikita Kipriyanov Aug 12 '22 at 12:35
  • I suppose you did already, but did you check server logs to get more details at why it is responding with a 401 ? – yield Aug 12 '22 at 12:39
  • 1
    If you make the target server ('server') add headers to the request, can you see those in the answers (`curl --include`)? Can you also tell by the headers that's indeed another server responding? Otherwise, you can perhaps use `tcpdump` and Wireshark to see if there is a difference in hops between a good and bad answer. – Halfgaar Aug 12 '22 at 12:48
  • Nope, I have no access to the server end. Edited the question to make that clear. – janneb Aug 12 '22 at 13:32

0 Answers0