У одного из Владивостокских провайдеров при заходе на graniru.org, как и ожидалось, редирект на "заглушку".
А пробился telnet'ом(без vpn) - "заглушки" нет.
Начал проверять с помощью скрипта ruby:
--------------
#!/usr/bin/ruby
require 'socket'
sock=TCPSocket.new("graniru.org",80)
sock.write("GET / HTTP/1.1\r\nHost: graniru.org\r\nConnection: close\r\n\r\n")
while line=sock.gets
print line
end
sock.close
--------------
Результат: редирект на "заглушку"
Тот же запрос, только он отправляется не целиком сразу, а по частям.
Результат: заглушки нет, грузится html сайта graniru.org
--------------
#!/usr/bin/ruby
require 'socket'
sock=TCPSocket.new("graniru.org",80)
sock.write("GET / HTTP/1.1\r\n")
sock.write("Host: graniru.org\r\nConnection: close\r\n\r\n")
while line=sock.gets
print line
end
sock.close
--------------
Новое приложение OoniProbe посылает запросы,например, с невалидной версией протокола и сравнивает ответ.
Поигрался с версией протокола: (даже при отправке запроса целиком) при замене "HTTP/1.1", например, на "HTTP/2.0" заглушки тоже нет.
У мтс такое не прокатывает. Но, быть может, у никоторых провайдеров и пронесет.
Но вопрос в том, как реализовать(не всегда же telnet'ом и скриптами заходить).
Замену версии протокола можно реализовать с помощью HTTP-injector.
Можно даже написать свой модуль(на хабре есть теория
https://habrahabr.ru/post/138328/),
который при обращении к конктретному IP будет немного изменять запрос.