Skip to content

Базовые сетевые технологии в примерах: работа с sockets, самописный HTTP-сервер, рукодельный DNS resolver, и т.п.

Notifications You must be signed in to change notification settings

hazadus/network-learn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🕸️🖥️🐍 network-learn

В этом репозитории на практике изучаю работу с сетью из Python.


socket module

Разбираемся с работой сокетов на простейших примерах.

References


DNS

Изучаем работу DNS.

  • DNS resolver (используем библиотеку dnspython): dns_resolver/dns_resolver.py
  • Отправляем запросы к DNS серверу по UDP вручную, резолвим доменное имя в IP (только стандартные средства Python): dns_resolver/dns_raw.py

References


HTTP

Изучаем работу протокола HTTP на практике.


WSGI

Разбираемся со спецификацией WSGI со стороны приложения и сервера.

  • Базовое WSGI-приложение (запускается встроенным в Python WSGI-сервером), выводит содержимое словаря environ: wsgi/environ.py
  • Приложение WSGI с простой маршрутизацией, по типу Flask: wsgi/routes.py
  • WSGI сервер: wsgi/server.py

Испытать одновременно сервер и приложение:

python server.py routes:application
curl -X GET http://127.0.0.1:8000/hello
curl -X GET http://127.0.0.1:8000/hello/Alexander

References

About

Базовые сетевые технологии в примерах: работа с sockets, самописный HTTP-сервер, рукодельный DNS resolver, и т.п.

Topics

Resources

Stars

Watchers

Forks