Делаю поддержку более корректной работы с хостами типа “vk.com:8000” , “1.1.1.1”, “[fda6:1800::5]:8000”
Если хост похож на IP адрес, то всю мишуру отсекаем, оставляя голое текстовое представление IP.
Поиск по хостлистам идет только по целой строке. “1.1.1.1”, “1.1.1”, “1.1”, “1” - такого больше не будет.
Если это не IP, то отсекаем : и все, что после него.
Такие хосты приходят в хедере Host: в http. В TLS в случае запроса по IP обычно не вставляется SNI extension. Порт так же не вставляется, если запрос идет по домену на нестандартный порт