24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Что происходит после того, как я ввожу в адресную строку браузера адрес какого-то сайта (Пентагона, например) до самого вывода этого сайта на экран? Всё по модели OSI, каждый протокол, каждый запрос и т.д. Начинаем мы, например, собственно с обращения к DNS-кэшу, потом, в случае закономерной неудачи отправляемся за помощью к DNS-серверу и т.д. А дальше что?
>>114761666 Это тред, который я буду бампать до посинения, или когда рак на горе свиснет, или пока не получу нормальный ответ/ссылку (сам нихуя не нашел, потому что тупой).
ппц, вот был бы я каким-нибудь сисадмином с десятилетним стажем - просветил бы неофитов, хуле. Ведь у каждого человека внутри сидит ментор, который только и ждёт случая разразиться своей мудростью, утолив потайные инстинкты.
>>114763678 > 2) если нет - к dns указанным в настройках панели роутера Ебнутый совсем? Как пека поймет, что в каком-то нахуй ненужном роутеры какие-то днс'ки?
Пк будет обращатся ровно к тем днс, которые указаны в параметрах соединения
>>114763519 Ты прав, конечно, но это же не лаба какая-то по плюсам или что-то в этом роде. Есть сфера, в которой мои знания, мягко говоря, поверхностны, и есть время, в котором я слегка ограничен. А разобраться хотелось бы.
Когда значит ты получил айпи сайта, то пека обращается по этому айпи к серверу, на котором хостится сайт, тот в свою очередь оправляет веб страницу по протоколу http или оборачивает весь трафон в https
>>114764234 Вы только что установили соединение с www.google.com. Просто, не так ли? Что же на самом деле произошло? Ну, если вы немного понимаете, как работают сети, то все не так просто. Вы только что задействовали DNS, TCP, UDP, IP, Wifi, Ethernet, DOCSIS, OC, SONET...
Блять, прочитав этот абзац, я подумал, что дальше будет подробно расписано о том, как всё это работает, и чуть не кончил в штаны, ведь именно это мне и нужно!
>>114765938 > >не должны на дефолные идти вообще, во внешней сети все маршруты должны быть указаны в таблице И там реально гигабайтные таблицы вшиты? А если айпи динамические?
>>114765990 Провайдерский роутер. А по поводу ДОЛЖЕН ЗНАТЬ ВСЮ ТАБЛИЦУ, он епта не обязан знать, провайдер может получать через bgp default route и всё, full view роутер может и не потянуть
Там не каждый айпишник отдельно адресуется, они разбиты на подсети, которые объедены в более крупные подсети, и так далее до автономных систем, которых мало.
>>114766226 Допустим есть Сычёв телеком, у ему нахуй не нужно знать глобальную таблицу маршрутизации, а есть ероха телеком, который пизже и могет себе позволить получать всю таблицу маршрутизации, потому что и оборудование мощнее и в случае проеба одной из as трафон пойдёт через другую
Нет, один провайдер покупает айпишники и трафик у другого провайдера, а тот у другого, и так до магистральных провайдеров. То есть Сычёв всегда шлёт трафик Ерохину, а Ерохин на магистрали. А магистральные провайдеры уже распределяет трафик между Ерохиными, которые распределяют трафик между своими Сычёвыми.
Нет. Маска может быть переменной длины. Айпишник - это 32-разрядное двоичное число. Маска показывает, какое число начиная с левого края относится к номеру сети. Оставшиеся числа относятся к номеру компа в этой сети.
>>114759104 (OP) Твой пека запрашивает у днс-сервера айпи сайта, к которому ты хотишь коннектиться. После получения айпи, заносит его в кэш и обращается к сайту напрямую через айпи
>>114767205 Тогда вот тебе любопытный вопрос: существуют ли такие иррациональные числа, которые можно возвести в иррациональную степень и получить рациональное число? Ну типа возвести корень из двух в степень равную корню из двух и получить рациональное число.
Потому что если бы это было возможно, значит возможно было бы и обратное, взять корень степени иррационального числа из, скажем, двойки. Корень степени ПИ из двойки, что это дичь?
>>114768226 >Чтобы избежать совсем уж ожесточенной борьбы за исчерпывающийся ресурс, RIPE NCC распродает IPv4-адреса блоками по 1024 штуки и только тем покупателям, которые уже имеют IPv6-адреса
Ты заебал, я тебя тыкнул носом, а ты все ещё продолжаешь оправдываться
Если это http, то устанавливается соединение на 80 порту, отсылается GET запрос, если https, то сначало идет хендшейк, установка контекста, а потом уже тот самый гет запрос. Сервер отвечает на гет запрос содержимым (в зависимости от того как настроен сервер, что было в запросе, какая версия протокола, с чанками или без, пакованное ли, чем и т.д.). Если хттпс то может быть еще ocsp запрос на валидацию серта (если предусмотрено issuer-ом). Браузер получает ответ сервера, распаковывает если там гзип, соединяет чанки, если они есть, парсит, рендерит, исполняет скрипты, подгружает также остальные части страницы. Это очень условно и на уровне соединений. Если тебя волнует как там летят датаграммы, то резонный вопрос нахуй тебе это надо, если ты не серьезный админ и не планируешь им быть (эникейщику это не надо).
>>114770162 И еще. К 80 порту если порт явно не указан. Для хттпс дефолт 443. Есть целая спецификация хттп протокола, для хттпс например может быть поле с отпечатком паблик ключа серта и браузер если умеет то будет сравнивать его с полученным (предотвращение митм атак). Кароче дохуя всего рассказывать.
>>114759104 (OP) Сначала идёт запрос к локальному dns-серверу, который висит на локальной петле 127.0.0.1 на 53 tcp/upd порту по умолчанию. Этот сервер обычно чисто кэширующий, правда есть возможность резолвинга по правилам указанном в hosts. Следует заметить, что запрос инкапсулируется в tcp/udp дейтаграмму (2ая по счёту изнутри матрёшка, 1ая- сам dns-запрос). Если локальный днс-сервер ничего толкового не выдал, то далее идёт запрос, согласно настроек сетевого интерфейса, через который ты общаешься с миром.
Основной шлюз: 192.168.0.1 Метрика шлюза: 0 Метрика интерфейса: 20 DNS-серверы с настройкой через DHCP: 192.168.0.1 192.168.0.1 Зарегистрировать с суффиксом: Только основной WINS-серверы с настройкой через DHCP: Нет
Видим, что dnsы указывают на роутер, на котором крутится dns сервер (если не ошибаюсь, на soho это обычно Dnsmasq). Почему так получилось, что в настройках соединения windows лежат адреса, указывающие на роутер? На момент терминации локального соединения ("LAN" в моём случаи), высылается "волшебная" udp-дейтаграмма https://ru.wikipedia.org/wiki/DHCP , и "волшебные гномики в windows" присваивают DNS-серверы соединению по пришествию dhcp-ответов. Мимопрошаренный
>>114770897 >Сначала идёт запрос к локальному dns-серверу, который висит на локальной петле 127.0.0.1 на 53 tcp/upd порту по умолчанию Смотря как настроены сетевые интерфейсы. Это все разговор ни о чем. Может стоять впн соединение или какой-нибудь драйвер, который пускает весь траф через сокс, в т.ч. днс запросы или. Или дохуя кароче всего может быть. Алсо днс это не тцп а юдп протокол. Алсо есть еще секуре днс. Это разговор на час.
Так выглядит ответ, в котором прилетели A- и AAAA-записи. Собственно, они есть соответствие между google.ru и цифирями ip-адрессов. Итак, часть проблем решена. А что, если адрес не просто www.google.ru, а www.google.ru/search?q=Too+Many+Zooz&ie=utf-8&oe=utf-8&gws_rd=ssl >>114771190 >Смотря как настроены сетевые интерфейсы. Это все разговор ни о чем Я тебе написал пример реального интерфейса. Запрос к локальному виндовому кеширующемуся серверу идёт по умолчанию (и боюсь что всегда, пока активен сервис). >Может стоять впн соединение VPNы это вообще отдельный разговор, а как его используют наши провайдеры, дак вообще долгая и печальная сказка. >или какой-нибудь драйвер, который пускает весь траф через сокс, в т.ч. днс запросы или. Или дохуя кароче всего может быть И так бывает, у меня например вообще на виндовой машинке крутится unbound+dnscrypt, но это не повод усложнять схему, когда есть, условно говоря, "классика", которая сделана как надо Мимопрошаренный
>>114759104 (OP) Все тот же вебразработчик итт. Модели OSI не помню, хуйня которую дропнул в универе. DNS сервер говорит тебе NS сервера для этого доменного имени. Лезешь по айпишнику с вопросом "а сайт site.ru" не пробегал? ДНС служба сервака хостинга тебе отвечает, ебана в рот, есть такой. Отправляет тебя на веб-сервер Дальше апач/никс по определенным условиям(типа айпишника,порта) предоставляет тебе доступ к корневой директории сайта. Ты лезешь в index.php, php интепритируется, тянет шаблоны, шаблоны показывают текст, тянут каринки с соседних папок на серваке, тянут базы mysql за инфой, и ты получаешь свой сайт, сука.
>>114759104 (OP) В общих чертах всё довольно просто: Ты — браузер. Представь себе что твоей мамаше (клиенту) вдруг захотелось узнать что-либо из городского архива (сервера). Например, план поместья твоего её прадедушки Ёбы. Номер архива (его IP адрес) ты не знаешь, но так как этот план тебе нужен просто до усрачки, то ты звонишь по единственному известному тебе номеру (IP), который выбит на форзаце записной книжки — в справочную (DNS-сервер). В справочной находят номер нужного тебе архива и под их диктовочку ты его записываешь в свою адресную книгу — DNS-кеш. В будущем тебе не понадобиться еще раз звонить в справочную — ведь номер архива тебе уже известен. Потом ты набираешь уже сам архив — обращаешься напрямую к веб-серверу. Далее ты делаешь нужный тебе запрос — "план_поместья_дедушки_ЁБЫ.jpg". Помимо этого, если они тебя уже знают (ты отправил им кукисы), то ты можешь назвать себя (произвести авторизацию), даже не делая запрос — а они уже будут знать, что тебе, шизику, надо. Можешь заполнить форму и переслать по факсу — это будет аналогом POST-запросов. После этого в архиве думают. Думают много, но быстро. Если ты запросил нечто суперсекретное, или попросту тебе недоступное — то тебя пошлют сразу нахуй и вернут 403 ошибку. Если у них нет ничего подобного — сделают то же самое, но с 404. Еще у них за это время может случиться пожар и ошибка будет в районе пятиста. Или они просто не смогут тебе ответить, хуй их поймешь (аналог Timeout-а). Сделав решение, они надиктовывают тебе или готовый файл (страницу, картинку, еще что-нибудь), или наспех сфабрикованную страницу. Ты (браузер) это информацию интепретируешь, а потом, резко ухватившись за живот, высираешь готовый файл в виде нужного тебе плана на ковёр. Если же это не просто файл, а целая HTML-страница, то ты хватаешь полученный кусок говна и, вспоминая школьную программу по черчению, рисуешь красивое полотно на новых заморских обоях. Клиент — твоя мамаша — приходит, видит весь этот вертеп и радуется. А потом стреляет себе в голову, это — обрыв связи. Да, примерно так всё происходит. писал_сервер_на_Python
>>114763678 >>114764572 >>114764776 Давай, расскажи еще о приоритетах, цисочник мамкин.Всегда проигрываю с таких экспертов, ради этого еще захожу в эту парашу, только здесь можно открыть иные грани дна . Насрал тебе за щеку в благодарность за веселье.
>>114772024 >www.google.ru/search?q=Too+Many+Zooz&ie=utf-8&oe=utf-8&gws_rd=ssl Получив от dns-сервера ip-адрес, формируется http-запрос (GET). В моём случаи выглядит как GET /search?q=Too+Many+Zooz&ie=utf-8&oe=utf-8&gws_rd=ssl HTTP/1.1 Упаковывается браузером (?) в tcp-дейтаграмму, в которой указан также ip адрес, порт сервера, ну например умолчательный 80 без шифрования. Дальше к этой дейтаграмме добавляется нашлёпка транспортного уровня, и творится магия на узлах, через которые он проходит до, допустим, 46.61.155.157. Похоже, что Ростелеком сейчас занимается пидерсией, т.к. его 46.61.155.157 ни разу не гугловские адреса. Соответственно можно предположить, что эти адреса указывают на проксик ростелекома, который помогает фильтровать http. Ну а дальше, сервер разбирает запрос, и высылает ответ, который летит обратно. >>114771190 >Алсо днс это не тцп а юдп протокол Это не так, wireshark/wiki в помощь, вполне себе udp-дейтаграммы летают, на момент резовлинга. Хотя допускаю, что в каких-нибудь злоебучих случаях, где перемешаны уровни OSI, может быть что угодно.
>>114773473 Что-то вроде того, но чисто под себя, с собственной реализацией CGI и плюшками. Хостю на нем свой блог, файловый сервер inb4: долбоеб и пару побочных проектов.
Начинаем мы, например, собственно с обращения к DNS-кэшу, потом, в случае закономерной неудачи отправляемся за помощью к DNS-серверу и т.д.
А дальше что?