ΠΡΠ΅ΠΆΠΎΠ²ΠΎΡΠΎ Π·Π°Π±Π°Π²ΡΠ½Π΅ ΠΈΠΌΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π²ΡΡΡ
Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΠΈΠ»ΠΈ ΡΡΠ»ΡΠ³ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°Ρ Ρ ΠΌΡΠ΅ΠΆΠ°ΡΠ°. ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-Π½ΠΈΡΠΊΠ° Π΅ Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΡΠ°, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠ° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. Π’ΠΎΠ²Π° Π²Π°ΠΆΠΈ Π·Π° Π²ΡΡΠΊΠ° ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΡΡΠ»ΡΠ³Π°, ΠΎΡ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΠ΅Π±ΡΠ°ΠΉΡ Π΄ΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅.
ΠΠΎΠ±ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ Π΅ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΈΠΌΠ΅Π½Π° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ (DNS). DNS ΠΏΠΎ ΠΏΡΠΈΡΠΎΠ΄Π° Π΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Ρ ΠΊΠΎΡΠ΅Π½Π½ΠΈ Π²ΡΠ·Π»ΠΈ, ΡΠ°Π·ΠΏΡΡΡΠ½Π°ΡΠΈ ΠΈΠ· ΡΡΠ»Π°ΡΠ° ΠΏΠ»Π°Π½Π΅ΡΠ°. ΠΠ° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΊΠΎΠΉΡΠΎ ΠΈ Π΄Π° Π΅ ΡΠ΅Π±ΡΠ°ΠΉΡ, ΠΏΡΡΠ²ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π½Π΅Π³ΠΎΠ²ΠΈΡ IP Π°Π΄ΡΠ΅Ρ.
ΠΡΠΌΠ° Π΄Π° ΠΎΠΏΠΈΡΠ²Π°ΠΌ ΡΠ΅Π»ΠΈΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΏΡΠ΅Π· βΠ΄ΡΡΠ²ΠΎΡΠΎβ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ Π·ΠΎΠ½ΠΈΡΠ΅, Π° ΡΠ΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ° Π΄ΠΎ ΡΠ°ΠΊΡΠ°, ΡΠ΅ Π·Π° Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΠΌΠ΅ Π΄ΠΎΠΌΠ΅ΠΉΠ½ Π² IP Π°Π΄ΡΠ΅Ρ, ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΠΌ ΠΎΡ DNS ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΡΠ²ΡΡΡΠΈ ΡΡΠ»Π°ΡΠ° ΡΠ°Π·ΠΈ ΡΠ°Π±ΠΎΡΠ° Π·Π° Π½Π°Ρ.
Π ΡΠ°ΠΊΠ°, ΠΎΡΠΊΡΠ΄Π΅ Π½Π°ΠΌΠΈΡΠ°ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ° Π½Π° DNS ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΠ°?
- ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΡΠ²ΠΎΡ DNS ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ.
- ΠΠ°ΠΌΠ΅ΡΠ΅ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΠΏΡΠ±Π»ΠΈΡΠ΅Π½ ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ.
- ΠΠ·Π΅ΠΌΠ΅ΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½ ΠΈΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΡ Π² Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΡ Π²ΠΈ ΡΡΡΠ΅Ρ.
ΠΡΡΠΊΠ° ΠΎΡ ΡΠ΅Π·ΠΈ ΠΎΠΏΡΠΈΠΈ ΡΠ΅ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠ΅ Π½Π°ΡΠ»Π°Π΄ΠΈΡΠ΅ Π½Π° Π±Π΅Π·Π³ΡΠΈΠΆΠ½ΠΎ ΡΡΡΡΠΈΡΠ°Π½Π΅ Π² ΡΠ²Π΅ΡΠΎΠ²Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°, Π½ΠΎ Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΆΠ΄Π° Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ Π² IP, ΡΠΎΠ³Π°Π²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΠ΅ ΠΏΠΎ-Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ ΠΊΡΠΌ ΠΈΠ·Π±ΠΎΡΠ° Π½Π° ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ.
ΠΠ°ΠΊΡΠΎ Π²Π΅ΡΠ΅ ΠΏΠΈΡΠ°Ρ , Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ISP ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΠ°, ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΈ Π°Π΄ΡΠ΅ΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΡΠΎΠ·ΠΈ ΡΠΏΠΈΡΡΠΊ. ΠΡΠΊΠΎΠΈ ΠΎΡ ΡΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π½ΠΈ, Π·Π°ΡΠΎΡΠΎ ΠΈΠΌΠ°Ρ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ° ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΡΠ²ΡΡΠ·Π°Π½ΠΎΡΡ ΠΎΡ ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
ΠΠΎΠ³Π°ΡΠΎ ΡΠΏΠΈΡΡΠΊΡΡ Π΅ ΠΌΠ°Π»ΡΠΊ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ "ping" ΡΡΡΠ½ΠΎ ΠΈ Π΄Π° ΡΡΠ°Π²Π½ΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π°ΡΠ° Π½Π° Π·Π°Π±Π°Π²ΡΠ½Π΅, Π½ΠΎ Π°ΠΊΠΎ Π΄ΠΎΡΠΈ Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΠΏΠΈΡΡΠΊΠ°, ΡΠΏΠΎΠΌΠ΅Π½Π°Ρ ΠΏΠΎ-Π³ΠΎΡΠ΅, ΡΠΎΠ³Π°Π²Π° ΡΠ°Π·ΠΈ Π·Π°Π΄Π°ΡΠ° ΡΡΠ°Π²Π° Π½Π΅ΠΏΡΠΈΡΡΠ½Π°.
ΠΡΠΎ Π·Π°ΡΠΎ, Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²Ρ ΡΠ°Π·ΠΈ Π·Π°Π΄Π°ΡΠ° ΠΏΠΎ-Π»Π΅ΡΠ½Π°, Π°Π·, ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ ΡΡΡ ΡΠΈΠ½Π΄ΡΠΎΠΌΠ° Π½Π° ΡΠ°ΠΌΠΎΠ·Π²Π°Π½Π΅Ρ, ΡΠΊΠΈΡΠΈΡΠ°Ρ
Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΠ²ΠΎ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΡΠ° Π½Π° ΠΌΠΎΡΡΠ° ΠΈΠ΄Π΅Ρ Π² Go, Π½Π°ΡΠ΅ΡΠ΅Π½ΠΎ
ΠΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΡΠΌΠ° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°ΠΌ ΡΠ΅Π»ΠΈΡ ΡΠΏΠΈΡΡΠΊ Ρ ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΠΈ, Π° ΡΠ΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ° ΡΠ°ΠΌΠΎ Π΄ΠΎ Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅.
$ get-closer ping -f dnsresolver.txt -b=0 --count=10
Closest hosts:
1.0.0.1 [3.4582ms]
8.8.8.8 [6.7545ms]
1.1.1.1 [12.6773ms]
8.8.4.4 [16.6361ms]
9.9.9.9 [40.0525ms]
ΠΠΎ Π΅Π΄Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠ·Π±ΠΈΡΠ°Ρ ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ Π·Π° ΡΠ΅Π±Π΅ ΡΠΈ, ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡ ΡΠ°ΠΌΠΎ Π΄ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π°Π΄ΡΠ΅ΡΠΈ (1.1.1.1, 8.8.8.8, 9.9.9.9) - Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΠ΅ ΡΠ° ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΊΡΠ°ΡΠΈΠ²ΠΈ ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠ°ΠΊΠ²Π°ΡΠ΅ ΠΎΡ Π³ΡΠΎΠ·Π½ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ Π°Π΄ΡΠ΅ΡΠΈ.
ΠΠΎ ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠΌΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ°, Π·Π°ΡΠΎ Π½Π΅ ΡΠ°Π·ΡΠΈΡΠΈΡΠ΅ ΡΠΏΠΈΡΡΠΊΠ°...
ΠΠ°ΠΊΡΠΎ ΠΏΠΎΠΊΠ°Π·Π° ΡΠ΅ΡΡΡΡ, βΡΠ΅Π·Π΅ΡΠ²Π½ΠΈΡΡβ Π°Π΄ΡΠ΅Ρ Π½Π° Cloudflare Π΅ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π·Π° ΠΌΠ΅Π½, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² spb-ix, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±Π»ΠΈΠ·ΠΎ Π΄ΠΎ ΠΌΠ΅Π½ ΠΎΡ msk-ix, Π² ΠΊΠΎΠΉΡΠΎ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ ΠΊΡΠ°ΡΠΈΠ²ΠΈΡΡ 1.1.1.1
Π Π°Π·Π»ΠΈΠΊΠ°ΡΠ°, ΠΊΠ°ΠΊΡΠΎ Π²ΠΈΠΆΠ΄Π°ΡΠ΅, Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π°, Π·Π°ΡΠΎΡΠΎ Π΄ΠΎΡΠΈ ΠΈ Π½Π°ΠΉ-Π±ΡΡΠ·ΠΈΡΡ ΡΠ²Π΅ΡΠ»ΠΈΠ½Π΅Π½ Π»ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠΈΠ³Π½Π΅ ΠΎΡ Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ Π΄ΠΎ ΠΠΎΡΠΊΠ²Π° Π·Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ 10 ms.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ping, PoC ΡΡΡΠΎ ΠΈΠΌΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° ΡΡΠ°Π²Π½ΡΠ²Π° Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ° Π·Π° Π΄ΡΡΠ³ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ, ΠΊΠ°ΡΠΎ http ΠΈ tcp, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ Π² IP ΡΡΠ΅Π· ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ ΡΠ΅Π·ΠΎΠ»Π²Π΅Ρ.
ΠΠΌΠ° ΠΏΠ»Π°Π½ΠΎΠ²Π΅ Π·Π° ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Ρ ΠΎΡΡΠΎΠ²Π΅ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° traceroute, Π·Π° Π΄Π° ΡΠ΅ ΡΠ»Π΅ΡΠ½ΠΈ Π½Π°ΠΌΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Ρ ΠΎΡΡΠΎΠ²Π΅, ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ°Ρ ΠΏΠΎ-ΠΊΡΠ°ΡΡΠΊ ΠΏΡΡ Π΄ΠΎ ΡΡΡ .
ΠΠΎΠ΄ΡΡ Π΅ Π³ΡΡΠ±, Π»ΠΈΠΏΡΠ²Π°Ρ ΠΌΡ ΠΊΡΠΏ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π½ΠΎ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΠ΅ Π½Π° ΡΠΈΡΡΠΈ Π΄Π°Π½Π½ΠΈ. Π©Π΅ ΡΠ΅ ΡΠ°Π΄Π²Π°ΠΌ Π½Π° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΠΎΡΠ·ΠΈΠ²ΠΈ, Π·Π²Π΅Π·Π΄ΠΈ
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com