Takes a file with hostnames and scans for supported protocols with ALPN. By default, it scans for IANA’s list of alpn protocol ids.


go install[email protected]


$ cat hosts.txt
$ alpnscanner -h hosts.txt [http/1.1 h2] [] [http/1.1]

Required flags

  -h string
    	hosts file path

Optional flags

  -c int
    	concurrency (default 10)
  -m string
    	mode specifies which protocols to scan for. Must be one of "iana", "http" or "h2draft" (default "iana")
  -p int
    	port (default 443)

The iana mode scans for the protocols listed here. The http mode uses the same list, but only scans for HTTP protocols. The h2draft mode scans for draft versions of HTTP/2.


This project was created to learn Go and you might be better off using other tools like the nmap tls-alpn script.


View Github