เบซเบผเบดเป‰เบ™เป€เบเบกเบ”เป‰เบงเบ Wifi เปƒเบ™ ESP32

เบซเบผเบดเป‰เบ™เป€เบเบกเบ”เป‰เบงเบ Wifi เปƒเบ™ ESP32

เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เปƒเบซเป‰โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบ„เบดเบ”โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบเบฐโ€‹เป€เบ›เบปเป‹เบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบ WiFi เปเบกเปˆเบ™โ€‹ เบซเบปเบงโ€‹เบ‚เปเป‰โ€‹เบ™เบตเป‰.

เบ‚เบญเบšเปƒเบˆเบžเบงเบเป€เบ‚เบปเบฒเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบ„เบดเบ”. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบฎเบฑเบ”.

เบงเบฝเบเบ‡เบฒเบ™เบ—เบฑเบ‡เปเบปเบ”เป„เบ”เป‰เบ–เบทเบเป€เบฎเบฑเบ”เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เปœเบถเปˆเบ‡เบ‚เบญเบ‡เบงเบฝเบเบญเบฐเบ”เบดเป€เบฅเบเป€เบžเบทเปˆเบญเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบกเปˆเบงเบ™เบŠเบทเปˆเบ™ เปเบฅเบฐ เบ‚เบฐเบซเบเบฒเบเบ„เบงเบฒเบกเบฎเบนเป‰เบ‚เบญเบ‡เบ‚เป‰เบญเบเปƒเบ™เบ‚เบปเบ‡เป€เบ‚เบ”เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบŠเบตเป€เบ„เบทเบญเบ‚เปˆเบฒเบ. เบŠเป‰เบฒ, 1..4 เบŠเบปเปˆเบงเป‚เบกเบ‡เบ•เปเปˆเบญเบฒเบ—เบดเบ”, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ•เบปเป‰เบ™เบ›เบตเบ™เบตเป‰.
เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบšเปเปˆเป„เบ”เป‰เบงเบฒเบ‡เปเบœเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเบˆเบดเบ‡เปƒเบ”เป†. เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ‚เบญเบ‡เปเบฎเบเป€เบเบต.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบซเบ™เป‰เบฒเบ—เบตเปˆเบงเบฒเบ‡เปเบœเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบงเบฝเบ. เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบเบฝเบกเบžเป‰เบญเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบเบญเบš, เบ›เบฐเบเบฒเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบเบฑเบ‡เบกเบตเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบเบฒเบ™เบ›เบฐเบเบญเบš, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เปƒเบ™เบšเบฑเบ™เบ—เบถเบเบ™เบตเป‰, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเปเปˆเบŠเป‰เปเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบˆเบฑเบ”เบžเบตเบกเบกเบฒเบขเบนเปˆเปƒเบ™ github. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเบญเบเบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ–เบทเบงเปˆเบฒเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบญเบฐเบ—เบดเบšเบฒเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบš "เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบปเปˆเบงเป„เบ›" เปเบฅเบฐเป€เบซเบ”เบœเบปเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฅเบทเบญเบ ESP32

เบ‚เป‰เบญเบเบšเปเปˆเบญเป‰เบฒเบ‡เบงเปˆเบฒเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡. เบšเบธเบเบ„เบปเบ™เบ—เบธเบเบ„เบปเบ™เบกเบตเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡. เบ‚เป‰เบญเบเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเปƒเบซเป‰เป€เบซเบ”เบœเบปเบ™เบเบฑเบšเบเบฒเบ™เป€เบฅเบทเบญเบเบฎเบฒเบ”เปเบงเบ‚เบญเบ‡เบ‚เป‰เบญเบ.

เบชเบฐเป€เบซเบ™เบตเปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบก เบเปเบฅเบฐเบ™เบตเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบ‚เบญเบ‡ Linux (เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ Raspberry Pi) + "เบญเบธเบ›เบฐเบเบญเบ™เบ•เปเปˆ" เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบ•เบปเบงเบ„เบงเบšเบ„เบธเบก (STM32) + CC1110 (8051 core) เปเบฅเบฐเปเบœเบ™เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบฅเบงเบšเบฅเบงเบกเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบขเบนเปˆเปƒเบ™เบ™เบฑเป‰เบ™ (125kHz, NFC, 433mHz, USB, iButton, bluetooth, ?) เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบšเปเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบญเบ. เปเบ™เบงเปƒเบ”เบเปเปˆเบ•เบฒเบก, เป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰ เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเบเบฑเบ‡เบ„เบปเบ‡เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบ•เบปเบงเปเบฅเบฐเบ›เบดเบ” (flipper-zero github "เบญเบปเบ‡เบเบฒเบ™เบ™เบตเป‰เบšเปเปˆเบกเบตเบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ.") เปเบฅเบฐเป„เบ›เบซเบฒเบฎเบฒเบ”เปเบงเบ—เบตเปˆเบšเปเปˆเบ—เปเบฒเบกเบฐเบ”เบฒเบซเบผเบฒเบ.

เบšเบฒเบ‡เบ—เบตเบ‚เป‰เบญเบเบœเบดเบ”, เปเบฅเบฐเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เบœเบนเป‰เบ‚เบฝเบ™เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เปเบซเบผเปˆเบ‡เบŠเปเปเบงเบกเบตเปƒเบซเป‰เบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ. เปเบ•เปˆเบ–เป‰เบฒเบšเปเปˆ, เบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเบŠเบทเป‰เบฎเบฒเบ”เปเบงเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป‚เบ”เบเบšเปเปˆเบกเบตเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡.

เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบชเปเบฒเบฅเบฑเบš "เป€เบ„เบทเปˆเบญเบ‡เบกเบท"

เบเปˆเบญเบ‡เบ„เบงเบ™เบˆเบฐเบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ (เบ™เป‰เบญเบเบเบงเปˆเบฒเบเปเปˆเบ”เบตเบเบงเปˆเบฒ).

เป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™:

  • เบšเปเปˆเบˆเบณเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเปเบšเบฑเบ”เป€เบ•เบตเบฃเบตเปƒเบ™เบ•เบปเบง. เบ”เป‰เบงเบเบเบฐเปเบช> 100 mA เป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš Wifi, เปเบšเบฑเบ”เป€เบ•เบตเบฃเบตเปƒเบ™เบ•เบปเบงเบˆเบฐเบกเบตเบ‚เบฐเปœเบฒเบ”เปƒเบซเบเปˆ เบซเบผเบท เบšเปเปˆเบ”เบปเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบซเป‰ "เบเปˆเบญเบ‡" เบ–เบทเบเปƒเบŠเป‰เป‚เบ”เบเบ—เบฐเบ™เบฒเบ„เบฒเบ™เบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เปเบ™เบงเปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ‚เป‰เบญเบเบกเบตเบ—เบฐเบ™เบฒเบ„เบฒเบ™เบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เบขเบนเปˆเปƒเบ™เบเบฐเป€เบ›เบปเป‹เบฒ/เบฅเบปเบ”เบ‚เบญเบ‡เบ‚เป‰เบญเบเบชเบฐเป€เปเบต.
  • เบฎเบฑเบเบชเบฒ "เบเปˆเบญเบ‡" Linux เบ—เบตเปˆเบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบžเบฒเบเปƒเบ™, เบ‚เบฝเบ™เบกเบฒเบซเบผเบฒเบเบ›เบตเปƒเบ™เบ—เบธเบเบžเบฒเบชเบฒ เบ”เป‰เบงเบเปœเป‰เบฒเบˆเปเบ‚เบฐเปœเบฒเบ”เบ™เป‰เบญเบ เปเบฅเบฐเบ›เบธเปˆเบกเบ„เบงเบšเบ„เบธเบกเบ—เบตเปˆเปœเป‰เบญเบเบเบงเปˆเบฒ, เบกเบฑเบ™เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเปเบฒเบเบซเบเบฑเบ‡เป€เบฅเบตเบ. เบœเบปเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป€เบšเบดเปˆเบ‡ / เบ›เบฐโ€‹เบกเบงเบ™โ€‹เบœเบปเบ™โ€‹เปƒเบ™โ€‹เบ„เบญเบกโ€‹เบžเบดเบงโ€‹เป€เบ•เบตโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เปเบ›เป‰เบ™โ€‹เบžเบดเบกโ€‹เป€เบ•เบฑเบกโ€‹เปเบฅเบฐโ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹.
  • เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ„เบงเบ™เบˆเบฐเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบ”เป‰เบ‡เปˆเบฒเบเปเบฅเบฐเป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡ (SDK เบ—เบตเปˆเบกเบตเบขเบนเปˆ, เบ•เบปเบงเบขเปˆเบฒเบ‡เบซเบผเบฒเบเปเบฅเบฐเป€เบญเบเบฐเบชเบฒเบ™).

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบญเบ, เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบกเปˆเบ™เบˆเบฐเปเบˆเป‰เบ‡ - ESP32.

เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ—เบตเปˆเบเบฐเบ•เบธเป‰เบ™เปƒเบซเป‰เบ‚เป‰เบญเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡ ESP32 เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบžเบฝเบ‡เบžเป. เป€เบ–เบดเบ‡โ€‹เปเบกเปˆเบ™โ€‹เบงเปˆเบฒโ€‹เบซเบผเบฒเบโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบฑเบ‡โ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปเบกเปˆเบ™โ€‹:

  • เบซเบผเบดเป‰เบ™เบญเป‰เบญเบกเบ”เป‰เบงเบ Bluetooth.
  • เบซเบผเบดเป‰เบ™เบญเป‰เบญเบกเบฎเบญเบšเบ”เป‰เบงเบเบฅเบฐเบ”เบฑเบš 433mHz เบ”เป‰เบงเบเบฎเบฒเบ”เปเบงเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบชเบธเบ” (เบžเบฝเบ‡เปเบ•เปˆเป‚เบกเบ”เบนเบ™เบ„เบงเบฒเบกเบเบงเป‰เบฒเบ‡เปƒเบซเบเปˆ, เป€เบŠเบดเปˆเบ‡เบžเบฝเบ‡เบžเปเบเบฑเบšเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”).

เบšเบดเบ™เปƒเบ™เบขเบฒเบ‚เบตเป‰เป€เบœเบดเป‰เบ‡เปƒเบ™ ESP32

  • ESP32 SDK (IDF) เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡ clumsy.
  • เบšเบฒเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบ (WiFi stack, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡) เบกเบฒเป‚เบ”เบเบšเปเปˆเบกเบตเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบซเปเบชเบฐเบซเบกเบธเบ”เบ„เบปเบ‡เบ—เบตเปˆเบ›เบฐเบเบญเบš.
  • เปเบ–เบš 5gHz เปเบกเปˆเบ™เบšเปเปˆเบฎเบญเบ‡เบฎเบฑเบšเปเบฅเบฐเบกเบตเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปเบฅเบฐ clumsiness เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš WiFi.

เปเบ•เปˆเบฅเบฒเบ„เบฒ / เบ‚เบฐเบซเบ™เบฒเบ”เป„เบ”เป‰เบŠเบปเบ”เป€เบŠเบตเบเบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบšเบปเบเบœเปˆเบญเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ‚เบญเบ‡เบŠเบญเบšเปเบงเบ•เบปเป‰เบ™เบ•เป

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบญเบฐโ€‹เบ—เบดโ€‹เบšเบฒเบโ€‹เป‚เบ”เบโ€‹เบซเบเปเป‰โ€‹เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เปเบฅเบฐโ€‹เบ„เบงเบฒเบกโ€‹เบ„เบดเบ”โ€‹เป€เบซเบฑเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบš ...

เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบฅเบฐเบเบฒเบ™เบญเบฑเบšเป‚เบซเบฅเบ”เป„เบŸเบฅเปŒเบˆเบฒเบ SD

เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบžเบฒเบเบ™เบญเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบœเปˆเบฒเบ™เบซเบ™เป‰เบฒเป€เบงเบฑเบšเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ, เป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™เบฅเบฒเบเบเบฒเบ™เป€เบกเบ™เบนเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. ESP32 เป€เบฅเบตเปˆเบกเบขเบนเปˆเปƒเบ™เป‚เปเบ” WiFi AP เปเบฅเบฐเบชเบฐเปเบ”เบ‡เปœเป‰เบฒเปƒเบ”เปœเบถเปˆเบ‡เบขเบนเปˆเบ—เบตเปˆเบ—เบตเปˆเบขเบนเปˆ IP เบ„เบปเบ‡เบ—เบตเปˆ.

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ ESP32 cores เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เป„เบง, เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เป„เบ”เป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™, เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบžเป‰เบญเบกเป†เบเบฑเบ™เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบงเบฑเบšเป„เบŠเบ•เปŒเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปเบฅเบฐ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เป‚เบซเบกเบ” router เปเบกเปˆเบ™เบšเปเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบซเบผเบฒเบ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบšเปเปˆเบกเบตเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเปเบฅเบฐเบซเบ™เป‰เบฒเบšเปเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบ—เบธเบเบฎเบนเบšเปเบšเบšเบญเบทเปˆเบ™เป†.
เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเปเบกเปˆเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบเบฒเบ™เบ„เบปเป‰เบ™เบ„เบงเป‰เบฒ.

เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเปเบžเบฑเบเป€เบเบฑเบ” Beacon

เบฎเบนเบšเปเบšเบšเปเบกเปˆเบ™ banal เปเบฅเบฐเบšเปเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบซเบผเบฒเบ. เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™ "เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰." เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบš.
เบกเบตเบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡ Espressif เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™.

เป‚เปเบ”เบชเบฐเปเบเบ™เบฅเบฒเบเบŠเบทเปˆ AP.
เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เป‚เบ—เบฅเบฐเบชเบฑเบšเบชเบฐเบซเบผเบฒเบ”เปƒเบ”เบเปเปˆเบ•เบฒเบกเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰.
เบ”เบต, เปƒเบ™เป‚เบซเบกเบ”เบ™เบตเป‰เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ AP เบˆเบฐเบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰.
Beacon spammer.
ESP32 เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ AP เบ—เบตเปˆเบกเบต SSID เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปเบฅเบฐ MAC เปเบšเบšเบชเบธเปˆเบกเปเบฅเบฐเป€เบฅเบตเปˆเบกเบชเบปเปˆเบ‡ [beacon frame] เบ•เบฒเบกเบฅเบฒเบเบŠเบทเปˆ SSIDs เบ—เบตเปˆเบชเป‰เบฒเบ‡เป„เบงเป‰เบเปˆเบญเบ™ (เบชเป‰เบฒเบ‡เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เบซเบผเบทเป„เบ”เป‰เบฎเบฑเบšเบเปˆเบญเบ™เบซเบ™เป‰เบฒเป‚เบ”เบเบเบฒเบ™เบชเบฐเปเบเบ™เบฅเบฒเบเบŠเบทเปˆ AP)

เป‚เปเบ”เบเบฒเบ™เบ”เบกเบŠเบธเบ”เปเบžเบฑเบเป€เบเบฑเบ” WiFi

เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ Espressif เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบชเปเบฒเบฅเบฑเบšเบŠเบญเบšเปเบงเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเปเบžเบฑเบเป€เบเบฑเบ” WiFi เบ—เบฑเบ‡เบซเบกเบปเบ” "เบšเบดเบ™เบขเบนเปˆเปƒเบ™เบญเบฒเบเบฒเบ”" เป‚เบ”เบเบœเปˆเบฒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™เป‚เบ—เบเบฑเบš. เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบงเบšเปเปˆเปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เป‚เบซเบกเบ”เบชเปเบฒเบฅเบฑเบšเบŠเปˆเบญเบ‡เบ„เบปเบ‡เบ—เบตเปˆเบ”เบฝเบง.

เบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบ„เบฑเปˆเบ‡เบ„เบฑเบ”เบซเบผเบฒเบเปเบกเปˆเบ™ imposed เปƒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบŸเบฑเบ‡เบŠเบฑเบ™เป‚เบ—เบเบฑเบš. เบ–เป‰เบฒเบญเบฑเบ™เบ™เบตเป‰เบšเปเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบšเบฑเบ™เบซเบฒเบชเปเบฒเบฅเบฑเบšเบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบเบฑเบšเบชเบฐเบ–เบดเบ•เบดเปเบšเบšเบ‡เปˆเบฒเบเป†, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเป„เบŸเบฅเปŒ PCAP เปƒเบ™ SD card เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡ tinker, เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบœเปˆเบฒเบ™เปเบ–เบงเปƒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐ Semalt. เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡ peculiarity เบงเปˆเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป‚เบ—เบซเบฒ callback เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบซเบผเบฑเบเบซเบ™เบถเปˆเบ‡, เปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบ‚เบฝเบ™เป€เบ›เบฑเบ™ SD เปƒเบ™เบญเบทเปˆเบ™.

เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ "เบญเบฒเบเบฒเบ”เบšเปเปˆเบกเบตเบชเบฝเบ‡", เบšเบฒเบ‡เบŠเบญเบ‡เบˆเบฐเบชเบนเบ™เป€เบชเบ (เบšเปเปˆเบกเบตเบซเป‰เบญเบ‡เบขเบนเปˆเปƒเบ™เบ„เบดเบงเปเบฅเบฐเบžเบงเบเบกเบฑเบ™เบ–เบทเบเบเบปเบเป€เบฅเบตเบ), เปเบ•เปˆเบกเบต "เบญเบฒเบเบฒเบ”" เบ›เบปเบเบเบฐเบ•เบดเบ‚เบญเบ‡เบญเบฒเบžเบฒเบ”เป€เบกเบฑเบ™เปƒเบ™เบ•เบญเบ™เปเบฅเบ‡ (5..7 APs เบžเบฒเบเปƒเบ™เบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™), เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเปƒเบ™ PCAP เปเบกเปˆเบ™เบชเปเบฒเป€เบฅเบฑเบ”เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบชเบนเบ™เป€เบชเบเปเบžเบฑเบเป€เบเบฑเบ”.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PCAP เปเบฅเบฐเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ, เบกเบตเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ MAC เปƒเบ™เบซเบปเบงเบŠเบธเบ”.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบฎเบนเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบšเบธเบเบ„เบปเบ™เปƒเบ™เบชเบฐเป‚เบกเบชเบญเบ™ / เบฎเป‰เบฒเบ™เบเบฒเป€เบŸเบเปˆเบญเบ™เบ—เบตเปˆเบฅเบฒเบงเบˆเบฐเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบผเบทเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เบชเบฒเบเบ•เบฒ. เบชเบญเบ‡เบชเบฒเบกเบ„เบปเบ™เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™ WiFi เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฑเบš APs เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบ. (เบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบ›เบดเบ”เบกเบฑเบ™..)

เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™ Wireshark เปเบกเปˆเบ™เบเบฒเบ™เบชเบถเบเบชเบฒเปเบฅเบฐเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเปเบœเบ™เบ—เบตเปˆ - เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”.

เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบŠเบธเบ”เบเบฒเบ™เป€เบชเบเบŠเบตเบงเบดเบ”

เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบเบฒเบ™เบชเบปเปˆเบ‡เปเบžเบฑเบเป€เบเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเบซเป‰เบฒเบกเปƒเบ™เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ” libnet80211.a, เป€เบŠเบดเปˆเบ‡เบกเบฒเป‚เบ”เบเบšเปเปˆเบกเบตเปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒ. เปเบ•เปˆโ€‹เบงเปˆเบฒโ€‹เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบเบฒเบ™โ€‹เบ‡เปˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบ›เบฑเบšโ€‹เบชเบญเบ‡โ€‹เบšเบดเบ”โ€‹. เบ—เบณเบญเบดเบ”เบ‚เป‰เบญเบเบชเบปเบ‡เป„เบชเบงเปˆเบฒเบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒเบเบฒเบ™เป‚เบžเบ” patch เบซเบผเบทเบšเปเปˆ. เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบเปˆเบฒเบ‡เป„เบ›เบ—เบปเปˆเบงเบšเปˆเบญเบ™เบ•เปˆเบฒเบ‡เป†เบ”เป‰เบงเบเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบชเบฐเปเบเบ™เบเบญเบšเบเบฒเบ™เบขเบทเบ™เบขเบฑเบ™เบเบฒเบ™เบขเบทเบ™เบขเบฑเบ™เป„เบ”เป‰เป€เบ›เบตเบ”เบ‚เบถเป‰เบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒ: "เป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”." เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เปƒเบ™ esp8266 เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบ‚เบญเบ‡เปเบžเบฑเบเป€เบเบฑเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบ›เบดเบ”เปเบฅเบฐเบกเบตเบชเบฐเบžเบฒเปเบซเปˆเบ‡เปƒเบ™ github เบชเปเบฒเบฅเบฑเบš esp8266.

เปƒเบ™เบซเบผเบฒเบเบšเปˆเบญเบ™ (เบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเบšเบญเบเบงเปˆเบฒเบšเปˆเบญเบ™เปƒเบ”) เบเบฒเบ™เบชเบฐเบเบฑเบ”เบเบฑเป‰เบ™ APs เบ—เบตเปˆเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบงเบดเบ—เบตเบ™เบตเป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เปเบฅเบฐเบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™ "เบเบฒเบ™เบ‚เบปเปˆเบกเป€เบซเบฑเบ‡" ...

เปเบฅเบฐเบ‚เป‰เบญเบเบเบฑเบ‡เปเบ›เบเปƒเบˆเบ—เบตเปˆเบเบฒเบ™เปเบˆเบเบขเบฒเบเบญเบดเบ™เป€เบ•เบตเป€เบ™เบฑเบ”เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฒเบเป‚เบ—เบฅเบฐเบชเบฑเบšเบ‚เบญเบ‡เบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบšเบฒเบ‡เบšเปˆเบญเบ™ ...

เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เปเบฅเบฐ RSSI เบ‚เบญเบ‡เปเบžเบฑเบเป€เบเบฑเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆ "เบšเปˆเบญเบ™เบ—เบตเปˆ APs เบŠเป‰เบฒเบเบšเปเปˆเบกเบฑเบเบกเบฑเบ™."

เป‚เปเบ”เป€เบฃเบปเบฒเป€เบ•เบต

เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเปœเป‰เบฒเบชเบปเบ™เปƒเบˆเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเบ„เบปเป‰เบ™เบซเบฒ.

ESP32 เบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบžเป‰เบญเบกเป†เบเบฑเบ™เปƒเบ™เป‚เปเบ” STA + SoftAP. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ” router NAT เบ„เบฅเบฒเบชเบชเบดเบเปƒเบชเปˆเบกเบฑเบ™.

เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ stack เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, Espressif เปƒเบŠเป‰เบชเป‰เบญเบก (เป€เบเบทเบญเบšเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡) เบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” lwip.

เปเบ•เปˆ, เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปƒเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™, เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” esp-lwip เบšเปเปˆเป„เบ”เป‰เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบชเบปเปˆเบ‡เบ•เปเปˆเบฅเบฐเบซเบงเปˆเบฒเบ‡ netif interfaces 'ap' (SoftAP) เปเบฅเบฐ 'st' (STA).

เปเบ™เปˆเบ™เบญเบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เป‚เบ”เบเบšเปเปˆเบกเบต NAT, เปเบ•เปˆเบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบชเบญเบ‡เบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™ STAs เบžเป‰เบญเบกเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš 'ap' เปเบฅเบฐ synchronizing เบ—เบตเปˆเบขเบนเปˆ IP เบˆเบฒเบเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบ„เบทเบญเบ‚เปˆเบฒเบ 'st' เบเบฑเบš 'ap'. เบชเบฐเบ™เบฑเป‰เบ™เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบšเปเปˆเบ„เบธเป‰เบกเบ„เปˆเบฒ เปเบฅเบฐเบกเบฑเบ™เบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™เบœเปˆเบฒเบ™ NAT.

เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบกเบต fork esp-lwip เบˆเบฒเบ martin-ger, เป€เบŠเบดเปˆเบ‡เป€เบžเบตเปˆเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เปˆเบฒเบเบ”เบฒเบเบ‚เบญเบ‡ NAT เบชเปเบฒเบฅเบฑเบš IP4.

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบกเบทเบ‚เบญเบ‡เบ‚เป‰เบญเบเบกเบตเบญเบฒเบเบฒเบ™เบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐ remake เบกเบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบชเปเบฒเบญเบฒเบ‡เบขเปˆเบฒเบ‡เบ”เบฝเบง (เปƒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ, เบกเบฑเบ™เบ‡เปˆเบฒเบเบเบงเปˆเบฒเป‚เบ”เบเบšเปเปˆเบกเบตเบชเป‰เบญเบกเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™, เปเบ•เปˆเบœเปˆเบฒเบ™ LWIP.เบ‚เป เบซเบ™เป‰เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบเบญเบš), เปเบ•เปˆ laziness prevailed เปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบˆเบฒเบ martin-ger เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™.

เปƒเบ™เป‚เบซเบกเบ” router, เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบŠเบปเบก IP4 เบ‚เบฒเป€เบ‚เบปเป‰เบฒเปเบฅเบฐเบ‚เบฒเบญเบญเบเปเบกเปˆเบ™เป€เบšเบดเปˆเบ‡.

เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบเบฑเบ”เบˆเบฒเบเบกเบฑเบ™เป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เปƒเบ™เบซเบ™เป‰เบฒเบˆเปเปเบฅเบฐเป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบดเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป„เบŸเบฅเปŒ:

  • เบŠเบทเปˆเบ‚เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš SoftAP ESP32 (เบŠเบธเบ” DHCP)
  • URL เบˆเบฒเบเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป DNS (UDP port 53) เบˆเบฒเบเบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš SoftAP ESP32.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เป„เบ›เบซเบฒเป„เบŸเบฅเปŒ PCAP.

เป‚เบซเบกเบ”เบ™เบตเป‰เบกเบตเบ›เบฐเป‚เบซเบเบ”เบซเบผเบฒเบ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆ, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเบดเปˆเบ‡เบ—เบตเปˆเป‚เบ—เบฅเบฐเบชเบฑเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบชเบปเปˆเบ‡เบเบฑเบšเป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบฅเบฐเบšเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เป„เบ›.

เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบ„เบดเบ”เบซเบฒเบงเบดเบ—เบตเบญเบทเปˆเบ™เปƒเบ™เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เป‚เปเบ”เบ™เบตเป‰, เป‚เบ”เบเบ„เบณเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบชเบฑเบ™เบˆเบญเบ™เป€เบ‚เบปเป‰เบฒ-เบญเบญเบเบ‚เบญเบ‡ softAP ESP32 เบ—เบฑเบ‡เปเบปเบ”เปƒเบ™เบฅเบฐเบ”เบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ: Ehernet header (destMAC[6]+srcMAC[6]+type[2]) + payload (IP4, IP6, DCHP, เปเบฅเบฐเบญเบทเปˆเบ™เป†เบ›เบฐเป€เบžเบ”).

เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, ESP32 เบฎเบฑเบšเบกเบทเบเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ router WiFi->WiFi เป„เบ”เป‰เบ”เบต, เบœเปˆเบฒเบ™เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ›เบปเบเบเบฐเบ•เบดเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบŠเบฑเบเบŠเป‰เบฒเบžเบดเป€เบชเบ”เปƒเบ”เป†. เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ„เบงเบฒเบกเบฅเปˆเบฒเบŠเป‰เบฒเปƒเบ™เป‚เบ—เบฅเบฐเบชเบฑเบšเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบœเปˆเบฒเบ™ router เปƒเบ™ ESP32 เปเบกเปˆเบ™เบšเปเปˆเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™.

เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, Espressif API เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบชเปเบฒเบฅเบฑเบš MAC เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš SoftAP EPS32. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฐเป€เบซเบ™เบตเปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒ "เบชเบฐเบšเบฒเบเบ”เบต" (esp_wifi_deauth_sta) เบเบฑเบš STAs เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบฅเป‰เบงเบ—เบตเปˆ "เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™".

เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เป‚เบ”เบ MAC เบชเปเบฒเบฅเบฑเบš STAs เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ— esp_wifi_deauth_sta()

เปƒเบ™เบเบฒเบ™เบชเบฐเบซเบฅเบธเบš

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เบกเบฒเบเบฑเบšเบชเบดเปˆเบ‡เปƒเบซเบกเปˆเปƒเบ™เบ‚เบญเบšเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš ESP32, เบšเบฒเบ‡เบ—เบตเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡) เบˆเบฐเป€เบ›เบฑเบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบ„เบปเบ™.

เบ‚เป‰เบญเบเบขเบฒเบเบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เบ–เบทเบเบ‚เบฝเบ™เป€เบžเบทเปˆเบญเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบเบฒเบ™เบชเบถเบเบชเบฒเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบชเปเบฒเบฅเบฑเบš "hacking", เปเบฅเบฐเบญเบทเปˆเบ™เป†, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เป‚เบ”เบเป€เบˆเบ”เบ•เบฐเบ™เบฒเบšเปเปˆเบชเบฐเบ”เบงเบเบซเบผเบฒเบ.

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เป€เบฎเบฑเบ”โ€‹เปเบœเปˆเบ™โ€‹เบ›เป‰เบฒเบโ€‹เบงเบปเบ‡โ€‹เบˆเบญเบ™โ€‹เบเบฒเบ™โ€‹เบžเบดเบกโ€‹, เป€เบžเบฒเบฐโ€‹เบงเปˆเบฒโ€‹เบกเบฑเบ™โ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒ 1.5-2 เบŠเบปเปˆเบงโ€‹เป‚เบกเบ‡โ€‹เป€เบžเบทเปˆเบญ soldering scarves เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹เบฎเบนเบšโ€‹เบ”เป‰เบงเบโ€‹เบชเบฒเบโ€‹.

เปเบฅเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ›เบฐเบเบญเบšเบกเบฑเบ™เบšเปเปˆเบกเบฒเบˆเบฒเบเบเบฐเบ”เบฒเบ™เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบก, เปเบ•เปˆเบˆเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เบฐเบซเบ™เบฒเบ”เบˆเบฐเบ™เป‰เบญเบเบฅเบปเบ‡.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™