Raspberry Pi + CentOS = Wi-Fi เดนเต‹เดŸเตเดŸเตโ€Œเดธเตโ€Œเดชเต‹เดŸเตเดŸเต (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดšเตเดตเดจเตเดจ เดคเตŠเดชเตเดชเดฟเดฏเตเดณเตเดณ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดฑเต‚เดŸเตเดŸเตผ)

เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดธเดฟเด‚เด—เดฟเตพ เดฌเต‹เตผเดกเต เดชเดฟเดธเดฟ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดตเตˆเดซเตˆ เด†เด•เตโ€Œเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเดฟเตฝ เดงเดพเดฐเดพเดณเด‚ เดตเดฟเดตเดฐเด™เตเด™เตพ เด‰เดฃเตเดŸเต. เดšเดŸเตเดŸเด‚ เดชเต‹เดฒเต†, เด‡เดคเดฟเดจเตผเดคเตเดฅเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฑเดพเดธเตโ€Œเดฌเดฟเดฏเตป เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดพเดฃเต.

เด†เตผโ€Œเดชเดฟโ€ŒเดŽเด‚-เด…เดงเดฟเดทเตโ€Œเด เดฟเดค เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเตเดŸเต† เด…เดจเตเดฏเดพเดฏเดฟเดฏเดพเดฏเดคเดฟเดจเดพเตฝ, เดˆ เดšเต†เดฑเดฟเดฏ เด…เดคเตเดญเตเดคเดคเตเดคเดฟเดฒเต‚เดŸเต† เด•เดŸเดจเตเดจเตเดชเต‹เด•เดพเตป เดŽเดจเดฟเด•เตเด•เต เด•เดดเดฟเดžเตเดžเดฟเดฒเตเดฒ, เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ เด…เดคเดฟเตฝ เดŽเดจเตเดฑเต† เดชเตเดฐเดฟเดฏเดชเตเดชเต†เดŸเตเดŸ เดธเต†เดจเตเดฑเต‹เดธเต เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเดจเดพเดฏเดฟเดฒเตเดฒ.

CentOS เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ Raspberry Pi 5 เดฎเต‹เดกเตฝ B+-เตฝ เดจเดฟเดจเตเดจเต 3GHz/AC Wi-Fi เดฑเต‚เดŸเตเดŸเตผ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เตพ เดฒเต‡เด–เดจเด‚ เดจเตฝเด•เตเดจเตเดจเต. เดจเดฟเดฐเดตเดงเดฟ เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดŽเดจเตเดจเดพเตฝ เด…เดงเดฟเด•เด‚ เด…เดฑเดฟเดฏเดชเตเดชเต†เดŸเดพเดคเตเดค เดคเดจเตเดคเตเดฐเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเด•เตเด‚, เด•เต‚เดŸเดพเดคเต† เดฌเต‹เดฃเดธเดพเดฏเดฟ - เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เด…เดงเดฟเด• เดตเตˆเดซเตˆ เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดกเตเดฐเต‹เดฏเดฟเด‚เด—เต, เด‡เดคเต เด’เดฐเต‡เดธเดฎเดฏเด‚ เดจเดฟเดฐเดตเดงเดฟ เดฎเต‹เดกเตเด•เดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต (2,4+5GHz).

Raspberry Pi + CentOS = Wi-Fi เดนเต‹เดŸเตเดŸเตโ€Œเดธเตโ€Œเดชเต‹เดŸเตเดŸเต (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดšเตเดตเดจเตเดจ เดคเตŠเดชเตเดชเดฟเดฏเตเดณเตเดณ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดฑเต‚เดŸเตเดŸเตผ)
(เดธเต—เดœเดจเตเดฏเดฎเดพเดฏเดฟ เดฒเดญเตเดฏเดฎเดพเดฏ เดšเดฟเดคเตเดฐเด™เตเด™เดณเตเดŸเต† เดฎเดฟเดถเตเดฐเดฟเดคเด‚)

เดšเดฟเดฒ เด•เต‹เดธเตเดฎเดฟเด•เต เดชเตเดฐเดตเต‡เด—เด™เตเด™เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฟเดฒเตเดฒเต†เดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด‰เดŸเตป เดคเดจเตเดจเต† เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเด‚. เดžเดพเตป เดŽเดจเตเดฑเต† เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดฐเดฎเดพเดตเดงเดฟ 100 เดŽเด‚เดฌเดฟเดชเดฟเดŽเดธเต เดธเตโ€Œเด•เตเดตเต€เดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด‡เดคเต เดŽเดจเตเดฑเต† เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เดฆเดพเดคเดพเดตเดฟเดจเตเดฑเต† เดตเต‡เด—เดค เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจเต. เดธเตˆเดฆเตเดงเดพเดจเตเดคเดฟเด•เดฎเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต N-เตฝ เดชเต‹เดฒเตเด‚ เด…เดฐ เด—เดฟเด—เดพเดฌเดฟเดฑเตเดฑเต เดฒเดญเดฟเด•เตเด•เตเดฎเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดจเตเดคเดฟเดจเดพเดฃเต เด‡เดคเตเดฐเดฏเตเด‚ เดฎเดจเตเดฆเด—เดคเดฟเดฏเดฟเดฒเตเดณเตเดณ เดŽเดธเดฟ เดตเต‡เดฃเตเดŸเดคเต? เดจเดฟเด™เตเด™เตพ เดธเตเดตเดฏเด‚ เดˆ เดšเต‹เดฆเตเดฏเด‚ เดšเต‹เดฆเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดŽเดŸเตเดŸเต เดฌเดพเดนเตเดฏ เด†เดจเตเดฑเดฟเดจเด•เดณเตเดณเตเดณ เด’เดฐเต เดฏเดฅเดพเตผเดคเตเดฅ เดฑเต‚เดŸเตเดŸเตผ เดตเดพเด™เตเด™เดพเตป เดธเตเดฑเตเดฑเต‹เดฑเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•.

0. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดคเต

  • เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ, "เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เด‰เตฝเดชเตเดชเดจเตเดจเด‚" เดคเดจเตเดจเต† เด•เดพเดฒเดฟเดฌเดฑเตเดณเตเดณเดคเดพเดฃเต: เดชเตˆ 3 เดฎเต‹เดกเตฝ B+ (เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ 5GHz เดตเต‡เด—เดคเดฏเตเด‚ เดšเดพเดจเดฒเตเด•เดณเตเด‚ เดจเต‡เดŸเดพเตป);
  • เดจเดฒเตเดฒ เดฎเตˆเด•เตเดฐเต‹ เดŽเดธเตเดกเดฟ >= 4GB;
  • เดฒเดฟเดจเด•เตเดธเตเด‚ เดฎเตˆเด•เตเดฐเต‹ เดŽเดธเตเดกเดฟ เดฑเต€เดกเดฑเตเด‚/เดฑเตˆเดฑเตเดฑเดฑเตเด‚ เด‰เดณเตเดณ เดตเตผเด•เตเด•เตเดธเตเดฑเตเดฑเต‡เดทเตป;
  • เดฒเดฟเดจเด•เตเดธเดฟเตฝ เดฎเดคเดฟเดฏเดพเดฏ เด•เดดเดฟเดตเตเด•เดณเตเดŸเต† เดฒเดญเตเดฏเดค, เดฒเต‡เด–เดจเด‚ เดชเดฐเดฟเดถเต€เดฒเดจเด‚ เดฒเดญเดฟเดšเตเดš เด’เดฐเต เด—เต€เด•เตเด•เดฟเดจเตเดณเตเดณเดคเดพเดฃเต;
  • เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเตเด‚ เดฒเดฟเดจเด•เตเดธเตเด‚ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดตเดฏเตผเดกเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต (eth0) เด•เดฃเด•เตเดฑเตเดฑเดฟเดตเดฟเดฑเตเดฑเดฟ, เดฒเต‹เด•เตเด•เตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเตฝ เดกเดฟเดŽเดšเตเดšเตโ€Œเดธเดฟเดชเดฟ เดธเต†เตผเดตเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เดฐเดฃเตเดŸเต เด‰เดชเด•เดฐเดฃเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เด†เด•เตโ€Œเดธเดธเตเดธเต.

เด…เดตเดธเดพเดจ เดชเต‹เดฏเดฟเดจเตเดฑเดฟเตฝ เด’เดฐเต เดšเต†เดฑเดฟเดฏ เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚. "เด†เดฆเตเดฏเด‚ เดตเดจเตเดจเดคเต, เดฎเตเดŸเตเดŸ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ..." เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เด†เด•เตเดธเดธเต เด‰เดชเด•เดฐเดฃเด™เตเด™เดณเตเดŸเต† เด…เดญเดพเดตเดคเตเดคเดฟเตฝ เด’เดฐเต Wi-Fi เดฑเต‚เดŸเตเดŸเตผ เดŽเด™เตเด™เดจเต† เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเด‚? เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เดชเดฐเดฟเดงเดฟเด•เตเด•เต เดชเตเดฑเดคเตเดคเตเดณเตเดณ เดˆ เดตเดฟเดจเต‹เดฆ เดตเตเดฏเดพเดฏเดพเดฎเด‚ เด‰เดชเต‡เด•เตเดทเดฟเดšเตเดšเต เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเดฒเต‡เด•เตเด•เต เดตเดฏเตผ เดตเดดเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เดจเตเดจเตเด‚ เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เด†เด•เตโ€Œเดธเดธเต เด‰เดฃเตเดŸเต†เดจเตเดจเตเด‚ เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดพเด‚. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, "เดฑเดพเดธเตเดฌเต†เดฑเดฟ" เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด…เดงเดฟเด• เดŸเดฟเดตเดฟเดฏเตเด‚ เด’เดฐเต เดฎเดพเดจเดฟเดชเตเดชเตเดฒเต‡เดฑเตเดฑเดฑเตเด‚ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ.

1. CentOS เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•

เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดนเต‹เด‚ เดชเต‡เดœเต

เดˆ เดฒเต‡เด–เดจเด‚ เดŽเดดเตเดคเตเดฎเตเดชเต‹เตพ, เด‰เดชเด•เดฐเดฃเดคเตเดคเดฟเตฝ CentOS-เดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดชเดคเดฟเดชเตเดชเต 32-เดฌเดฟเดฑเตเดฑเต เด†เดฃเต. เดตเต‡เตพเดกเต เดตเตˆเดกเต เดตเต†เดฌเดฟเตฝ เดŽเดตเดฟเดŸเต†เดฏเต‹ 64-เดฌเดฟเดฑเตเดฑเต ARM เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเดฒเต† เด…เดคเตเดคเดฐเด‚ OS-เด•เดณเตเดŸเต† เดชเตเดฐเด•เดŸเดจเด‚ 20% เดตเดฐเต† เด•เตเดฑเดฏเตเดจเตเดจเต เดŽเดจเตเดจ เด…เดญเดฟเดชเตเดฐเดพเดฏเด™เตเด™เตพ เดžเดพเตป เด•เดฃเตเดŸเต. เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดชเดฑเดฏเดพเดคเต† เดžเดพเตป เดˆ เดจเดฟเดฎเดฟเดทเด‚ เดตเดฟเดŸเตเดจเตเดจเต.

เดฒเดฟเดจเด•เตเดธเดฟเตฝ, เด•เต‡เตผเดฃเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดšเดฟเดคเตเดฐเด‚ เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด• "-เดฑเดพเดธเตเดฌเต†เดฑเดฟ เดชเตˆ-"เด‡เดคเต เดฎเตˆเด•เตเดฐเต‹ เดŽเดธเตเดกเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดŽเดดเตเดคเตเด•:

# xzcat CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1810-sda.raw.xz | 
  dd of=/dev/mmcblk0 bs=4M
# sync

เด‡เดฎเต‡เดœเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เตเดจเตเดจเดคเดฟเดจเตเดฎเตเดฎเตเดชเต, เดžเด™เตเด™เตพ เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต SWAP เดชเดพเตผเดŸเตเดŸเต€เดทเตป เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด‚, เดฒเดญเตเดฏเดฎเดพเดฏ เดฎเตเดดเตเดตเตป เดตเต‹เดณเตเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฑเต‚เดŸเตเดŸเต เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ SELinux เด’เดดเดฟเดตเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚. เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดฒเดณเดฟเดคเดฎเดพเดฃเต: Linux-เตฝ เดฑเต‚เดŸเตเดŸเดฟเดจเตเดฑเต† เด’เดฐเต เดชเด•เตผเดชเตเดชเต เด‰เดฃเตเดŸเดพเด•เตเด•เตเด•, เด†เดฆเตเดฏเดคเตเดคเต† (/boot) เด’เดดเดฟเด•เต†เดฏเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดฎเตˆเด•เตเดฐเต‹เดŽเดธเตเดกเดฟ เดชเดพเตผเดŸเตเดŸเต€เดทเดจเตเด•เดณเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•, เด’เดฐเต เดชเตเดคเดฟเดฏ เดฑเต‚เดŸเตเดŸเต เดธเตƒเดทเตโ€ŒเดŸเดฟเดšเตเดšเต เด•เต‹เดชเตเดชเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด…เดคเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เตเด•.

เด†เดตเดถเตเดฏเดฎเดพเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด‚ (เด•เดŸเตเดคเตเดค เด•เตบเดธเต‹เตพ เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต)

# mount /dev/mmcblk0p3 /mnt
# cd /mnt
# tar cfz ~/pi.tgz . --no-selinux
# cd
# umount /mnt

# parted /dev/mmcblk0

(parted) unit s
(parted) print free
Model: SD SC16G (sd/mmc)
Disk /dev/mmcblk0: 31116288s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start     End        Size       Type     File system     Flags
        63s       2047s      1985s               Free Space
 1      2048s     1370111s   1368064s   primary  fat32           boot, lba
 2      1370112s  2369535s   999424s    primary  linux-swap(v1)
 3      2369536s  5298175s   2928640s   primary  ext4
        5298176s  31116287s  25818112s           Free Space

(parted) rm 3
(parted) rm 2

(parted) print free
Model: SD SC16G (sd/mmc)
Disk /dev/mmcblk0: 31116288s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start     End        Size       Type     File system  Flags
        63s       2047s      1985s               Free Space
 1      2048s     1370111s   1368064s   primary  fat32        boot, lba
        1370112s  31116287s  29746176s           Free Space

(parted) mkpart
Partition type?  primary/extended? primary
File system type?  [ext2]? ext4
Start? 1370112s
End? 31116287s

(parted) set
Partition number? 2
Flag to Invert? lba
New state?  on/[off]? off

(parted) print free
Model: SD SC16G (sd/mmc)
Disk /dev/mmcblk0: 31116288s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start     End        Size       Type     File system  Flags
        63s       2047s      1985s               Free Space
 1      2048s     1370111s   1368064s   primary  fat32        boot, lba
 2      1370112s  31116287s  29746176s  primary  ext4

(parted) quit

# mkfs.ext4 /dev/mmcblk0p2 
mke2fs 1.44.6 (5-Mar-2019)
/dev/mmcblk0p2 contains a swap file system labelled '_swap'
Proceed anyway? (y,N) y
Discarding device blocks: done                            
Creating filesystem with 3718272 4k blocks and 930240 inodes
Filesystem UUID: 6a1a0694-8196-4724-a58d-edde1f189b31
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done   

# mount /dev/mmcblk0p2 /mnt
# tar xfz ~/pi.tgz -C /mnt --no-selinux

เดฑเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเดจเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เด…เตบเดชเดพเด•เตเด•เต เดšเต†เดฏเตเดค เดถเต‡เดทเด‚, เด…เดคเดฟเตฝ เดšเดฟเดฒ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดตเดฐเตเดคเตเดคเต‡เดฃเตเดŸ เดธเดฎเดฏเดฎเดพเดฃเดฟเดคเต.

SELinux เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเด• /mnt/etc/selinux/config:

SELINUX=disabled

เดŽเดกเดฟเดฑเตเดฑเดฟเด‚เด—เต /mnt/etc/fstab, เด…เดคเดฟเตฝ เดชเดพเตผเดŸเตเดŸเต€เดทเดจเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดฐเดฃเตเดŸเต เดŽเตปเดŸเตเดฐเดฟเด•เตพ เดฎเดพเดคเตเดฐเด‚ เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเต: เดฌเต‚เดŸเตเดŸเต (/เดฌเต‚เดŸเตเดŸเต, เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ), เดฑเต‚เดŸเตเดŸเต (เดžเด™เตเด™เตพ UUID เดฎเต‚เดฒเตเดฏเด‚ เดฎเดพเดฑเตเดฑเตเดจเตเดจเต, เด‡เดคเต เดฒเดฟเดจเด•เตเดธเดฟเดฒเต† blkid เด•เดฎเดพเตปเดกเดฟเดจเตเดฑเต† เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต เดชเด เดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเต เด•เดฃเตเดŸเต†เดคเตเดคเดพเดจเดพเด•เตเด‚):

UUID=6a1a0694-8196-4724-a58d-edde1f189b31  /     ext4    defaults,noatime 0 0
UUID=6938-F4F2                             /boot vfat    defaults,noatime 0 0

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดžเด™เตเด™เตพ เด•เต‡เตผเดฃเตฝ เดฌเต‚เดŸเตเดŸเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดฎเดพเดฑเตเดฑเตเดจเตเดจเต: เดฑเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เด’เดฐเต เดชเตเดคเดฟเดฏ เดธเตเดฅเดพเดจเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต, เดกเต€เดฌเด—เตเด—เดฟเด‚เด—เต เดตเดฟเดตเดฐเด™เตเด™เดณเตเดŸเต† เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเด•เดฏเตเด‚ (เด“เดชเตเดทเดฃเดฒเดพเดฏเดฟ) เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เดณเดฟเตฝ IPv6 เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด•เต‡เตผเดฃเดฒเดฟเดจเต† เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

# cd
# umount /mnt
# mount /dev/mmcblk0p1 /mnt

เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด‡เดคเดพ /mnt/cmdline.txt เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเต‹เดฎเดฟเดฒเต‡เด•เตเด•เต (เดนเตˆเดซเดจเตเด•เดณเดฟเดฒเตเดฒเดพเดคเตเดค เด’เดฐเต เดตเดฐเดฟ):

root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait quiet ipv6.disable_ipv6=1

เดšเต†เดฏเตโ€Œเดคเต:

# cd
# umount /mnt
# sync

เดžเด™เตเด™เตพ เดฎเตˆเด•เตเดฐเต‹เดŽเดธเตเดกเดฟเดฏเต† "เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ" เด†เดฏเดฟ เดชเตเดจเดƒเด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ ssh (เดฑเต‚เดŸเตเดŸเต/เดธเต†เดจเตเดฑเต‹เดธเต) เดตเดดเดฟ เด…เดคเดฟเดฒเต‡เด•เตเด•เต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด†เด•เตโ€Œเดธเดธเต เดจเต‡เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

2. CentOS เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต

เด†เดฆเตเดฏเดคเตเดคเต† เดฎเต‚เดจเตเดจเต เด…เดšเดžเตเดšเดฒเดฎเดพเดฏ เดšเดฒเดจเด™เตเด™เตพ: เดชเดพเดธเตเดธเตเดตเต‡เตผเดกเต, yum-y update, เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•.

เดžเด™เตเด™เตพ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดฎเดพเดจเต‡เดœเตโ€Œเดฎเต†เดจเตเดฑเต เดจเตฝเด•เตเดจเตเดจเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดšเต†เดฏเตโ€Œเดคเดคเต:

# yum install systemd-networkd
# systemctl enable systemd-networkd
# systemctl disable NetworkManager
# chkconfig network off

เด’เดฐเต เดซเดฏเตฝ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเด• (เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเด•เตพเด•เตเด•เตŠเดชเตเดชเด‚) /etc/systemd/network/eth0.network:

[Match]
Name=eth0

[Network]
DHCP=ipv4

เดžเด™เตเด™เตพ "เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ" เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดตเต€เดฃเตเดŸเตเด‚ ssh เดตเดดเดฟ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด†เด•เตโ€Œเดธเดธเต เดจเต‡เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (IP เดตเดฟเดฒเดพเดธเด‚ เดฎเดพเดฑเดฟเดฏเต‡เด•เตเด•เดพเด‚). เดŽเดจเตเดคเดพเดฃเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด• /etc/resolv.conf, เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดฎเดพเดจเต‡เดœเตผ เดจเต‡เดฐเดคเตเดคเต† เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดคเต. เด…เดคเดฟเดจเดพเตฝ, เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด…เดคเดฟเดจเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เดŽเดกเดฟเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเด•. เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• systemd- เดชเดฐเดฟเดนเดฐเดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดšเต†เดฏเตเดฏเดฟเดฒเตเดฒ.

เดžเด™เตเด™เตพ โ€œเด…เดจเดพเดตเดถเตเดฏเดฎเดพเดฏเดคเตโ€ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต, OS-เดจเตเดฑเต† เดฒเต‹เดกเดฟเด‚เด—เต เดจเดจเตเดจเดพเด•เตเด•เตเด•เดฏเตเด‚ เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

# systemctl set-default multi-user.target
# yum remove GeoIP Network* aic* alsa* cloud-utils-growpart 
  cronie* dhc* firewal* initscripts iwl* kexec* logrotate 
  postfix rsyslog selinux-pol* teamd wpa_supplicant

เด†เตผเด•เตเด•เดพเดฃเต เดตเต‡เดฃเตเดŸเดคเต เด•เตเดฐเต‡เดพเตบ เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดฆเดนเดฟเด•เตเด•เดพเดคเตเดคเดตเดฐเตเด‚ systemd เดŸเตˆเดฎเดฑเตเด•เตพ, เดจเดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเดคเต เดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. / var / log- เด’เดชเตเดชเด‚ เดจเต‹เด•เตเด•เตเด• เดœเต‡เตผเดฃเดฒเดฟเดธเตเดฑเตเดฑเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฒเต‹เด—เต เดนเดฟเดธเตเดฑเตเดฑเดฑเดฟ เด†เดตเดถเตเดฏเดฎเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ (เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ, เดธเดฟเดธเตเดฑเตเดฑเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจ เดจเดฟเดฎเดฟเดทเด‚ เดฎเตเดคเตฝ เดฎเดพเดคเตเดฐเดฎเต‡ เดตเดฟเดตเดฐเด™เตเด™เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด•เดฏเตเดณเตเดณเต‚):

# mkdir /var/log/journal
# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald
# vi /etc/systemd/journald.conf

เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเต‡เดตเดจเด™เตเด™เตพ เดตเดดเดฟ IPv6 เด‰เดชเดฏเต‹เด—เด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเด• (เด†เดตเดถเตเดฏเดฎเต†เด™เตเด•เดฟเตฝ)/ etc / ssh / sshd_config:

AddressFamily inet

/etc/sysconfig/chronyd:

OPTIONS="-4"

"เดฑเดพเดธเตเดฌเต†เดฑเดฟ" เดฏเดฟเดฒเต† เดธเดฎเดฏเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดธเด•เตเดคเดฟ เด’เดฐเต เดชเตเดฐเดงเดพเดจ เด•เดพเดฐเตเดฏเดฎเดพเดฃเต. เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เด•เตเดฒเต‹เด•เตเด•เดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เด…เดตเดธเตเดฅ เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดนเดพเตผเดกเตโ€Œเดตเต†เดฏเตผ เดถเต‡เดทเดฟ เด‡เดฒเตเดฒเดพเดคเตเดคเดคเดฟเดจเดพเตฝ, เดธเดฎเดจเตเดตเดฏเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด‡เดคเดฟเดจเตเดณเตเดณ เดตเดณเดฐเต† เดจเดฒเตเดฒเดคเตเด‚ เดตเต‡เด—เดคเดฏเต‡เดฑเดฟเดฏเดคเตเดฎเดพเดฏ เดกเต†เดฎเตบ เด†เดฃเต เด•เตเดฐเต‹เดฃเดฟ - เด‡เดคเดฟเดจเด•เด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดธเตเดตเดฏเดฎเต‡เดต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เต NTP เดธเต†เตผเดตเดฑเตเด•เตพ เดเดฑเตเดฑเดตเตเด‚ เด…เดŸเตเดคเตเดคเตเดณเตเดณเดตเดฏเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเดพเด‚.

/etc/chrony.conf:

server 0.ru.pool.ntp.org iburst
server 1.ru.pool.ntp.org iburst
server 2.ru.pool.ntp.org iburst
server 3.ru.pool.ntp.org iburst

เดธเดฎเดฏ เดฎเต‡เด–เดฒ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ เดคเดจเตเดคเตเดฐเด‚. 5GHz เด†เดตเตƒเดคเตเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต Wi-Fi เดฑเต‚เดŸเตเดŸเตผ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดžเด™เตเด™เดณเตเดŸเต† เดฒเด•เตเดทเตเดฏเด‚ เดŽเดจเตเดจเดคเดฟเดจเดพเตฝ, เดžเด™เตเด™เตพ เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เด†เดถเตเดšเดฐเตเดฏเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดคเดฏเตเดฏเดพเดฑเต†เดŸเตเด•เตเด•เตเด‚. เดฑเต†เด—เตเดฒเต‡เดฑเตเดฑเตผ:

# yum info crda
เดธเด‚เด—เตเดฐเดนเด‚: 802.11 เดตเดฏเตผเดฒเต†เดธเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเด‚เด—เดฟเดจเดพเดฏเตเดณเตเดณ เดฑเต†เด—เตเดฒเต‡เดฑเตเดฑเดฑเดฟ เด•เด‚เดชเตเดฒเดฏเตปเดธเต เดกเต†เดฎเตบ

เดˆ เดฆเตเดทเดฟเดšเตเดš เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ, เดธเดฎเดฏ เดฎเต‡เด–เดฒเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, 5GHz เด†เดตเตƒเดคเตเดคเดฟเด•เดณเตเด‚ "เด‰เดฏเตผเดจเตเดจ" เดธเด‚เด–เตเดฏเด•เดณเตเดณเตเดณ เดšเดพเดจเดฒเตเด•เดณเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต (เดฑเดทเตเดฏเดฏเดฟเตฝ) "เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต". เดญเต‚เด–เดฃเตเดกเด™เตเด™เดณเตเดŸเต†/เดจเด—เดฐเด™เตเด™เดณเตเดŸเต† เดชเต‡เดฐเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเต† เด’เดฐเต เดธเดฎเดฏ เดฎเต‡เด–เดฒ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต, เด…เดคเดพเดฏเดคเต, เดชเด•เดฐเด‚:

# timedatectl set-timezone Europe/Moscow

เดžเด™เตเด™เตพ เด…เดฎเตผเดคเตเดคเตเด•:

# timedatectl set-timezone Etc/GMT-3

เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เดนเต†เดฏเตผเดธเตเดฑเตเดฑเตˆเดฒเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด…เดตเดธเดพเดจ เดฎเดฟเดจเตเด•เตเด•เตเดชเดฃเดฟเด•เตพ:

# hostnamectl set-hostname router

/root/.bash_profile:

. . .

# User specific environment and startup programs

export PROMPT_COMMAND="vcgencmd measure_temp"
export LANG=en_US.UTF-8
export PATH=$PATH:$HOME/bin

3. CentOS เด†เดกเต-เด“เดฃเตเด•เตพ

เดฎเตเด•เดณเดฟเตฝ เดชเดฑเดžเตเดžเดคเต†เดฒเตเดฒเดพเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเตฝ "เดตเดพเดจเดฟเดฒ" เดธเต†เดจเตเดฑเต‹เดธเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเต‚เตผเดฃเตเดฃ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เดณเดพเดฏเดฟ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเด‚. 10 เดธเต†เด•เตเด•เตปเดกเดฟเดจเตเดณเตเดณเดฟเตฝ (เดตเต€เดฃเตเดŸเตเด‚) เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ, 15 เดฎเต†เด—เดพเดฌเตˆเดฑเตเดฑเดฟเตฝ เดคเดพเดดเต† เดฑเดพเดฎเตเด‚ 1.5 เดœเดฟเด—เดพเดฌเตˆเดฑเตเดฑเต เดฎเตˆเด•เตเดฐเต‹ เดŽเดธเตเดกเดฟเดฏเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ (เด…เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ /เดฌเต‚เดŸเตเดŸเต เด•เดพเดฐเดฃเด‚ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ 1 เดœเดฟเด—เดพเดฌเตˆเดฑเตเดฑเดฟเตฝ เดคเดพเดดเต†เดฏเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดจเดฎเตเด•เตเด•เต เดธเดคเตเดฏเดธเดจเตเดงเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดŸเตเดŸเต†) เด’เดฐเต เดชเดฟเดธเดฟเดฏเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด…เดตเดธเดพเดจเดฟเด•เตเด•เดฃเด‚.

เดˆ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ Wi-Fi เด†เด•เตโ€Œเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเต เดธเต‹เดซเตโ€Œเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เดธเดพเดงเดพเดฐเดฃ CentOS เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต† เด•เดดเดฟเดตเตเด•เตพ เดšเต†เดฑเตเดคเดพเดฏเดฟ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดตเตˆ-เดซเตˆ เด…เดกเดพเดชเตเดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เดกเตเดฐเตˆเดตเตผ (เดซเต‡เด‚เดตเต†เดฏเตผ) เด…เดชเตเด—เตเดฐเต‡เดกเต เดšเต†เดฏเตเดฏเดพเด‚. เดชเดฆเตเดงเดคเดฟเดฏเตเดŸเต† เดนเต‹เด‚ เดชเต‡เดœเต เดชเดฑเดฏเตเดจเตเดจเต:

Raspberry 3B, 3B+ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดตเตˆเดซเตˆ

Raspberry PI 3B/3B+ เดซเต‡เด‚เดตเต†เดฏเตผ เดซเดฏเดฒเตเด•เตพ CentOS เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เดฟเดฒเตเดฒ. เดชเตเดฐเดถเตเดจเด‚ เดฎเดจเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดซเต‡เด‚เดตเต†เดฏเตผ เดจเต‡เดŸเตเดจเตเดจเดคเดฟเดจเตเด‚ เดตเตˆเดซเตˆ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฒเต‡เด–เดจเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚.

CentOS เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเดคเต เดตเตเดฏเด•เตเดคเดฟเด—เดค เด‰เดชเดฏเต‹เด—เดคเตเดคเดฟเดจเต เดžเด™เตเด™เตพเด•เตเด•เต เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. CentOS-เดฒเต† เดตเดฟเดคเดฐเดฃ Wi-Fi เดซเต‡เด‚เดตเต†เดฏเดฑเดฟเดจเต† เดฌเตเดฐเต‹เดกเตโ€Œเด•เต‹เด‚ เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเดฐเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด…เดจเตเดฌเดจเตเดงเดฎเดพเดฏ เด’เดจเตเดจเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเต (เด…เดคเต‡ เดตเต†เดฑเตเด•เตเด•เดชเตเดชเต†เดŸเตเดŸ เดฌเตˆเดจเดฑเดฟ เดฌเตเดฒเต‹เดฌเตเด•เตพ...). เด‡เดคเต, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต, เด†เด•เตเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเต เดฎเต‹เดกเดฟเตฝ เดŽเดธเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚.

Wi-Fi เดซเต‡เด‚เดตเต†เดฏเตผ เด…เดชเตเด—เตเดฐเต‡เดกเตเด‰เดชเด•เดฐเดฃ เดฎเต‹เดกเดฒเตเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เดซเต‡เด‚เดตเต†เดฏเตผ เดชเดคเดฟเดชเตเดชเตเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเด•:

# journalctl | grep $(basename $(readlink /sys/class/net/wlan0/device/driver))
Jan 01 04:00:03 router kernel: brcmfmac: F1 signature read @0x18000000=0x15264345
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43455-sdio.bin for chip 0x004345(17221) rev 0x000006
Jan 01 04:00:03 router kernel: usbcore: registered new interface driver brcmfmac
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Mar  1 2015 07:29:38 version 7.45.18 (r538002) FWID 01-6a2c8ad4
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_c_preinit_dcmds: CLM version = API: 12.2 Data: 7.14.8 Compiler: 1.24.9 ClmImport: 1.24.9 Creation: 2014-09-02 03:05:33 Inc Data: 7.17.1 Inc Compiler: 1.26.11 Inc ClmImport: 1.26.11 Creation: 2015-03-01 07:22:34 

เดซเต‡เด‚เดตเต†เดฏเตผ เดชเดคเดฟเดชเตเดชเต 7.45.18/01.03.2015/XNUMX เดคเต€เดฏเดคเดฟเดฏเดฟเดฒเต† XNUMX เด†เดฃเต†เดจเตเดจเต เดžเด™เตเด™เตพ เด•เดพเดฃเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดจเดฎเตเดชเดฑเตเด•เตพ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เตเด•: 43455 (brcmfmac43455-sdio.bin).

เดจเดฟเดฒเดตเดฟเดฒเต† เดฑเดพเดธเตเดฌเดฟเดฏเตป เดšเดฟเดคเตเดฐเด‚ เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•. เดฎเดŸเดฟเดฏเดจเตเดฎเดพเตผเด•เตเด•เต เดฎเตˆเด•เตเดฐเต‹ เดŽเดธเตเดกเดฟเดฏเดฟเตฝ เดšเดฟเดคเตเดฐเด‚ เดŽเดดเตเดคเดพเดจเตเด‚ เด…เดตเดฟเดŸเต† เดจเดฟเดจเตเดจเต เดซเต‡เด‚เดตเต†เดฏเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดซเดฏเดฒเตเด•เตพ เดŽเดŸเตเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚. เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฒเดฟเดจเด•เตเดธเดฟเตฝ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดฑเต‚เดŸเตเดŸเต เดชเดพเตผเดŸเตเดŸเต€เดทเตป เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด…เดตเดฟเดŸเต† เดจเดฟเดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดคเต เดชเด•เตผเดคเตเดคเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚:

# wget https://downloads.raspberrypi.org/raspbian_lite_latest
# unzip -p raspbian_lite_latest > raspbian.img
# fdisk -l raspbian.img
Disk raspbian.img: 2 GiB, 2197815296 bytes, 4292608 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x17869b7d

Device        Boot  Start     End Sectors  Size Id Type
raspbian.img1        8192  532480  524289  256M  c W95 FAT32 (LBA)
raspbian.img2      540672 4292607 3751936  1.8G 83 Linux

# mount -t ext4 -o loop,offset=$((540672 * 512)) raspbian.img /mnt
# cp -fv /mnt/lib/firmware/brcm/*43455* ...
'/mnt/lib/firmware/brcm/brcmfmac43455-sdio.bin' -> ...
'/mnt/lib/firmware/brcm/brcmfmac43455-sdio.clm_blob' -> ...
'/mnt/lib/firmware/brcm/brcmfmac43455-sdio.txt' -> ...
# umount /mnt

เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ Wi-Fi เด…เดกเดพเดชเตเดฑเตเดฑเตผ เดซเต‡เด‚เดตเต†เดฏเตผ เดซเดฏเดฒเตเด•เตพ เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเดฟ "เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ" เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดพเดฑเตเดฑเดฟ เดธเตเดฅเดพเดชเดฟเด•เตเด•เดฃเด‚. /usr/lib/firmware/brcm/

เดžเด™เตเด™เตพ เดญเดพเดตเดฟ เดฑเต‚เดŸเตเดŸเตผ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดธเดจเตเดคเต‹เดทเดคเตเดคเต‹เดŸเต† เดชเตเดžเตเดšเดฟเดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

# journalctl | grep $(basename $(readlink /sys/class/net/wlan0/device/driver))
Jan 01 04:00:03 router kernel: brcmfmac: F1 signature read @0x18000000=0x15264345
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43455-sdio.bin for chip 0x004345(17221) rev 0x000006
Jan 01 04:00:03 router kernel: usbcore: registered new interface driver brcmfmac
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Feb 27 2018 03:15:32 version 7.45.154 (r684107 CY) FWID 01-4fbe0b04
Jan 01 04:00:03 router kernel: brcmfmac: brcmf_c_preinit_dcmds: CLM version = API: 12.2 Data: 9.10.105 Compiler: 1.29.4 ClmImport: 1.36.3 Creation: 2018-03-09 18:56:28 

เดชเดคเดฟเดชเตเดชเต: 7.45.154 เดคเต€เดฏเดคเดฟ 27.02.2018/XNUMX/XNUMX.

เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ EPEL:

# cat > /etc/yum.repos.d/epel.repo << EOF
[epel]
name=Epel rebuild for armhfp
baseurl=https://armv7.dev.centos.org/repodir/epel-pass-1/
enabled=1
gpgcheck=0
EOF

# yum clean all
# rm -rfv /var/cache/yum
# yum update

4. เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเตเด‚ เดฎเตเดจเตเดจเดฟเดฒเตเดณเตเดณ เดตเต†เดฒเตเดฒเตเดตเดฟเดณเดฟเด•เดณเตเด‚

เดžเด™เตเด™เตพ เดฎเตเด•เดณเดฟเตฝ เดธเดฎเตเดฎเดคเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, "เดฑเดพเดธเตเดฌเต†เดฑเดฟ" เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เดจเต†เดฑเตเดฑเตเดตเตผเด•เตเด•เดฟเดฒเต‡เด•เตเด•เต "เดตเดฏเตผ" เดตเดดเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดฆเดพเดคเดพเดตเต เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เด†เด•เตโ€Œเดธเดธเต เดจเตฝเด•เตเดจเตเดจเดคเต เด…เดคเต‡ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดคเดจเตเดจเต†เดฏเดพเดฃเต†เดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดพเด‚: เดชเตŠเดคเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเดฒเต† เดตเดฟเดฒเดพเดธเด‚ เดกเตˆเดจเดพเดฎเดฟเด•เต เด†เดฏเดฟ เดจเตฝเด•เตเดจเตเดจเดคเต DHCP เดธเต†เตผเดตเตผ เด†เดฃเต (เด’เดฐเตเดชเด•เตเดทเต‡ MAC เดฌเตˆเตปเดกเดฟเด‚เด—เดฟเดจเตŠเดชเตเดชเด‚). เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดฑเดพเดธเตเดฌเต†เดฑเดฟเดฏเตเดŸเต† เด…เดจเตเดคเดฟเดฎ เดธเดœเตเดœเต€เด•เดฐเดฃเดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚, เดจเดฟเด™เตเด™เตพ เด…เดคเดฟเตฝ เดฆเดพเดคเดพเดตเดฟเดจเตเดฑเต† เด•เต‡เดฌเดฟเตพ "เดชเตเดฒเด—เต" เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เดจเดฟเด™เตเด™เตพ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดฟ. เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเตเดณเตเดณ เด…เด‚เด—เต€เด•เดพเดฐเด‚ systemd-networkd - เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฟเดทเดฏเด‚ เด‡เดตเดฟเดŸเต† เดšเตผเดšเตเดš เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเดฟเดฒเตเดฒ.

เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเตเดŸเต† Wi-Fi เด‡เดจเตเดฑเตผเดซเต‡เดธเต(เด•เตพ) เด’เดฐเต เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดพเดฃเต, เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เด‡เดฅเตผเดจเต†เดฑเตเดฑเต เด…เดกเดพเดชเตเดฑเตเดฑเตผ (eth0) เดฌเดพเดนเตเดฏเดฎเดพเดฃเต. เดจเดฎเตเด•เตเด•เต เดฒเต‹เด•เตเด•เตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดฟเด•เตเด•เดพเดฏเดฟ เดจเดฎเตเดชเตผ เดจเตฝเด•เดพเด‚, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต: 192.168.0.0/24. เดฑเดพเดธเตเดฌเต†เดฑเดฟ เดตเดฟเดฒเดพเดธเด‚: 192.168.0.1. เด’เดฐเต เดกเดฟเดŽเดšเตเดšเตเดธเดฟเดชเดฟ เดธเต†เตผเดตเตผ เดฌเดพเดนเตเดฏ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเตฝ (เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต) เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚.

เดชเต‡เดฐเดฟเดŸเตฝ เดธเตเดฅเดฟเดฐเดค เดชเตเดฐเดถเตเดจเด‚ ะธ เดชเตเดฐเดถเดธเตเดค เด—เตเดตเดพเดŸเตเดŸเดฟเดฎเดพเดฒเตป เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผ - systemd เดกเดฟเดธเตเดŸเตเดฐเดฟเดฌเตเดฏเต‚เดทเดจเตเด•เดณเดฟเตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เดณเตเด‚ เดธเต‡เดตเดจเด™เตเด™เดณเตเด‚ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเดจเตเดจ เด†เดฐเต†เดฏเตเด‚ เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฐเดฃเตเดŸเต เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เตพ.

เดธเดฎเดพเดจเตเดคเดฐ เด…เดฐเดพเดœเด•เดคเตเดตเด‚ (เดฒเดฟเดฑเดฟเด•เตเด•เตฝ เดกเตˆเด—เตเดฐเดทเตป)เดฒเต†เดจเดพเตผเดŸเตเดŸเต เดชเต‹เดŸเตเดŸเดฑเดฟเด‚เด—เต เดธเตเดตเดจเตเดคเด‚ เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดธเดฎเดพเดนเดฐเดฟเดšเตเดšเต systemd เดตเดณเดฐเต† เดจเดฒเตเดฒเดคเต. เดˆ systemd เดฎเดฑเตเดฑเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เตพ เดตเดณเดฐเต† เดตเต‡เด—เดคเตเดคเดฟเตฝ เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต, เดฑเดซเดฑเดฟเดฏเตเดŸเต† เดตเดฟเดธเดฟเตฝ เดชเตเดฐเดนเดฐเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด•เดฐเด•เดฏเดฑเดพเตป เด…เดตเตผเด•เตเด•เต เดธเดฎเดฏเดฎเดฟเดฒเตเดฒ, เด…เดตเดฐเตเดŸเต† เดคเดŸเดธเตเดธ เด—เดคเดฟ เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเตป เดชเต‹เดฒเตเด‚ เด•เดดเดฟเดฏเดพเดคเต† เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดคเดจเตเดจเต† เด‡เดŸเดฑเดฟ เดตเต€เดดเตเดจเตเดจเต.

เดŽเดจเตเดจเดพเตฝ เด—เต—เดฐเดตเดฎเดพเดฏเดฟ, systemd OS- เดจเตเดฑเต† เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดธเดฎเดพเดฐเด‚เดญเดฟเดšเตเดš เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเตเดŸเต† เด†เด•เตเดฐเดฎเดฃเดพเดคเตเดฎเด• เดธเดฎเดพเดจเตเดคเดฐเดตเตฝเด•เตเด•เดฐเดฃเด‚ เดชเดฐเดฟเดšเดฏเดธเดฎเตเดชเดจเตเดจเดฐเดพเดฏ เดธเต€เด•เตเดตเตปเดทเตเดฏเตฝ LSB เดธเตเดชเต†เดทเตเดฏเดฒเดฟเดธเตเดฑเตเดฑเตเด•เตพเด•เตเด•เต เด’เดฐเตเดคเดฐเด‚ "เด•เดดเตเดค เดชเดพเดฒเด‚" เด†เดฃเต. เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, เดˆ "เดธเดฎเดพเดจเตเดคเดฐ เด•เตเดดเดชเตเดชเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต" เด•เตเดฐเดฎเด‚ เด•เตŠเดฃเตเดŸเตเดตเดฐเตเดจเตเดจเดคเต เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เดตเตเดฏเด•เตเดคเดฎเดฒเตเดฒเต†เด™เตเด•เดฟเดฒเตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฃเต.

เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดชเต‡เดฐเตเด•เดณเตเดณเตเดณ เดฐเดฃเตเดŸเต เดตเต†เตผเดšเตเดตเตฝ เดฌเตเดฐเดฟเดกเตเดœเต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ เดžเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต: LAN ะธ เดตเดพเตป. เดžเด™เตเด™เตพ Wi-Fi เด…เดกเดพเดชเตเดฑเตเดฑเตผ (เด•เตพ) เด†เดฆเตเดฏเดคเตเดคเต‡เดคเดฟเดฒเต‡เด•เตเด•เตเด‚ eth0 "raspberry" เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเดฟเดฒเต‡เด•เตเด•เตเด‚ "เด•เดฃเด•เตโ€Œเดฑเตเดฑเต" เดšเต†เดฏเตเดฏเตเด‚.

/etc/systemd/network/lan.netdev:

[NetDev]
Name=lan
Kind=bridge

/etc/systemd/network/lan.network:

[Match]
Name=lan

[Network]
Address=192.168.0.1/24
IPForward=yes

/etc/systemd/network/wan.netdev:

[NetDev]
Name=wan
Kind=bridge
#MACAddress=xx:xx:xx:xx:xx:xx

/etc/systemd/network/wan.network:

[Match]
Name=wan

[Network]
DHCP=ipv4
IPForward=yes

IPForward=เด…เดคเต† เดฑเต‚เดŸเตเดŸเดฟเด‚เด—เต เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต sysctl เดตเดดเดฟ เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เต เดธเต‚เดšเดจ เดจเตฝเด•เต‡เดฃเตเดŸเดคเดฟเดจเตเดฑเต† เด†เดตเดถเตเดฏเด•เดค เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดจเตเดจเต.
MACA เดตเดฟเดฒเดพเดธเด‚= เดตเต‡เดฃเดฎเต†เด™เตเด•เดฟเตฝ เด•เดฎเดจเตเดฑเต เดšเต†เดฏเตเดฏเดพเดคเต† เดฎเดพเดฑเตเดฑเดพเด‚.

เด†เดฆเตเดฏเด‚ เดจเดฎเตเดฎเตพ eth0 "เด•เดฃเด•เตโ€Œเดฑเตเดฑเต" เดšเต†เดฏเตเดฏเตเดจเตเดจเต. "เดเด•เต€เด•เดฐเดฃ เดชเตเดฐเดถเตเดจเด‚" เดžเด™เตเด™เตพ เด“เตผเด•เตเด•เตเด•เดฏเตเด‚ เดˆ เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเตเดฑเต† MAC เดตเดฟเดฒเดพเดธเด‚ เดฎเดพเดคเตเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‡เดคเต เดชเต‹เดฒเต†:

# cat /sys/class/net/eth0/address 

เดžเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต /etc/systemd/network/eth.network:

[Match]
MACAddress=b8:27:eb:xx:xx:xx

[Network]
Bridge=wan

เดžเด™เตเด™เตพ เดฎเตเดฎเตเดชเดคเตเดคเต† เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเตฝ eth0 เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด…เดคเดฟเดฒเต‡เด•เตเด•เต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด†เด•เตโ€Œเดธเดธเต เดจเต‡เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (IP เดตเดฟเดฒเดพเดธเด‚ เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚ เดฎเดพเดฑเตเด‚):

# rm -fv /etc/systemd/network/eth0.network
# reboot

5.DNSMASQ

Wi-Fi เด†เด•เตโ€Œเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด’เดฐเต เดฎเดงเตเดฐ เดœเต‹เดกเดฟเดฏเต† เดตเต†เดฒเตเดฒเตเดจเตเดจ เด’เดจเตเดจเตเด‚ เดคเดจเตเดจเต†เดฏเดฟเดฒเตเดฒ dnsmasq + hostapd เด‡เดคเตเดตเดฐเต† เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. เดŽเดจเตเดฑเต† เด…เดญเดฟเดชเตเดฐเดพเดฏเดคเตเดคเดฟเตฝ.

เด†เดฐเต†เด™เตเด•เดฟเดฒเตเด‚ เดฎเดฑเดจเตเดจเดพเตฝ เดชเดฟเดจเตเดจเต†...hostapd - เด‡เดคเดพเดฃเต Wi-Fi เด…เดกเดพเดชเตเดฑเตเดฑเดฑเตเด•เตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต (เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต, เด…เดตเดฏเต† เดตเต†เตผเดšเตเดตเดฒเดฟเดฒเต‡เด•เตเด•เต เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด‡เดคเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด‚ LAN "raspberries"), เดตเดฏเตผเดฒเต†เดธเต เด•เตเดฒเดฏเดจเตเดฑเตเด•เดณเต† เด…เด‚เด—เต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

dnsmasq โ€” เด•เตเดฒเดฏเดจเตเดฑเตเด•เดณเตเดŸเต† เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดธเตเดฑเตเดฑเดพเด•เตเด•เต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: เดเดชเดฟ เดตเดฟเดฒเดพเดธเด™เตเด™เตพ, เดกเดฟเดŽเตปเดŽเดธเต เดธเต†เตผเดตเดฑเตเด•เตพ, เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เด—เต‡เดฑเตเดฑเตโ€Œเดตเต‡, เดธเดฎเดพเดจเดฎเดพเดฏ เดกเดฟเดฒเตˆเดฑเตเดฑเตเด•เตพ เดŽเดจเตเดจเดฟเดต เดจเตฝเด•เตเดจเตเดจเต.

เดจเดฎเตเด•เตเด•เต dnsmasq เตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเด‚:

# yum install dnsmasq

เดชเดพเดฑเตเดฑเต‡เตบ /etc/resolv.conf:

nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 77.88.8.8
nameserver 77.88.8.1
domain router.local
search router.local

เดจเดฟเด™เตเด™เดณเตเดŸเต† เด‡เดทเตเดŸเดคเตเดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดŽเดกเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด•.

เดฎเดฟเดจเดฟเดฎเดฒเดฟเดธเตเดฑเตเดฑเต /etc/dnsmasq.conf:

domain-needed
bogus-priv
interface=lan
bind-dynamic
expand-hosts
domain=#
dhcp-range=192.168.0.100,192.168.0.199,255.255.255.0,24h
conf-dir=/etc/dnsmasq.d

เด‡เดตเดฟเดŸเต† "เดฎเดพเดœเดฟเด•เต" เดชเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดฒเดพเดฃเต เดฌเตˆเตปเดกเต-เดกเตˆเดจเดพเดฎเดฟเด•เต, เด‡เดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดจเตเดจเดคเตเดตเดฐเต† เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เดพเตป dnsmasq เดกเต†เดฎเดฃเดฟเดจเต‹เดŸเต เดชเดฑเดฏเตเดจเตเดจเต เด‡เดจเตเดฑเตผเดซเต‡เดธเต=เดฒเดพเตป, เดคเตเดŸเด™เตเด™เดฟเดฏเดคเดฟเดจเต เดถเต‡เดทเด‚ เด…เดญเดฟเดฎเดพเดจเด•เดฐเดฎเดพเดฏ เดเด•เดพเดจเตเดคเดคเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเดณเตผเดจเตเดจเตเดชเต‹เด•เดฐเตเดคเต.

# systemctl enable dnsmasq
# systemctl start dnsmasq; journalctl -f

6. HOSTAPD

เด’เดŸเตเดตเดฟเตฝ, เดฎเดพเดœเดฟเด•เต hostapd เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเตเด•เตพ. เดˆ เด…เดฎเต‚เดฒเตเดฏเดฎเดพเดฏ เดตเดฐเดฟเด•เตพ เดคเต‡เดŸเดฟ เด†เดฐเต†เด™เตเด•เดฟเดฒเตเด‚ เดˆ เดฒเต‡เด–เดจเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต†เดจเตเดจเดคเดฟเตฝ เดŽเดจเดฟเด•เตเด•เต เดธเด‚เดถเดฏเดฎเดฟเดฒเตเดฒ.

hostapd เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดฎเตเดชเต, เดจเดฟเด™เตเด™เตพ "เดฏเต‚เดฃเดฟเดซเต‹เด‚ เดชเตเดฐเดถเตเดจเด‚" เดฎเดฑเดฟเด•เดŸเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด…เดงเดฟเด• USB Wi-Fi เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ เด•เดฃเด•เตโ€Œเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เด…เดจเตเดคเตผเดจเดฟเตผเดฎเตเดฎเดฟเดค Wi-Fi เด…เดกเดพเดชเตเดฑเตเดฑเตผ wlan0 เดจเต เด…เดคเดฟเดจเตเดฑเต† เดชเต‡เดฐเต wlan1 เดŽเดจเตเดจเต เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเตฝ เดฎเดพเดฑเตเดฑเดพเดจเดพเด•เตเด‚. เด…เดคเดฟเดจเดพเตฝ, เดžเด™เตเด™เตพ เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดชเต‡เดฐเตเด•เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเด‚: (เดตเดฏเตผเดฒเต†เดธเต) เด…เดกเดพเดชเตเดฑเตเดฑเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดžเด™เตเด™เตพ เด…เดฆเตเดตเดฟเดคเต€เดฏ เดชเต‡เดฐเตเด•เตพ เด•เตŠเดฃเตเดŸเตเดตเดจเตเดจเต เด…เดตเดฏเต† MAC เดตเดฟเดฒเดพเดธเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚.

เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดตเตˆเดซเตˆ เด…เดกเดพเดชเตเดฑเตเดฑเดฑเดฟเดจเดพเดฏเดฟ, เด…เดคเต เด‡เดชเตเดชเต‹เดดเตเด‚ wlan0 เด†เดฃเต:

# cat /sys/class/net/wlan0/address 
b8:27:eb:xx:xx:xx

เดžเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต /etc/systemd/network/wl0.link:

[Match]
MACAddress=b8:27:eb:xx:xx:xx

[Link]
Name=wl0

เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เด…เดคเต เด‰เดฑเดชเตเดชเดฟเด•เตเด•เตเด‚ wl0 - เด‡เดคเต เด…เดจเตเดคเตผเดจเดฟเตผเดฎเตเดฎเดฟเดค Wi-Fi เด†เดฃเต. เด‡เดคเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดฑเดพเดธเตเดฌเต†เดฑเดฟ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•:

# yum install hostapd wireless-tools

เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเตฝ /etc/hostapd/hostapd.conf:

ssid=rpi
wpa_passphrase=1234567890

channel=36

country_code=US

interface=wl0
bridge=lan

driver=nl80211

auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

macaddr_acl=0

hw_mode=a
wmm_enabled=1

# N
ieee80211n=1
require_ht=1
ht_capab=[MAX-AMSDU-3839][HT40+][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40]

# AC
ieee80211ac=1
require_vht=1
ieee80211d=0
ieee80211h=0
vht_capab=[MAX-AMSDU-3839][SHORT-GI-80]
vht_oper_chwidth=1
vht_oper_centr_freq_seg0_idx=42

เด’เดฐเต เดจเดฟเดฎเดฟเดทเด‚ เดชเต‹เดฒเตเด‚ เดฎเดฑเด•เตเด•เดพเดคเต† เดธเด‚เดธเตเดฅเดพเดจ เด…เดŸเดฟเดฏเดจเตเดคเดฐ เดธเดฎเดฟเดคเดฟ, เดžเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดฎเดพเดฑเตเดฑเตเด•เดฏเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เดธเตเดตเดฎเต‡เดงเดฏเดพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•:

# hostapd /etc/hostapd/hostapd.conf

hostapd เด…เดคเดฟเดจเตเดฑเต† เด…เดตเดธเตเดฅ เด•เตบเดธเต‹เดณเดฟเดฒเต‡เด•เตเด•เต เดชเตเดฐเด•เตเดทเต‡เดชเดฃเด‚ เดšเต†เดฏเตเดคเตเด•เตŠเดฃเตเดŸเต เด‡เดจเตเดฑเดฑเดพเด•เตเดŸเต€เดตเต เดฎเต‹เดกเดฟเตฝ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด‚. เดชเดฟเดถเด•เตเด•เดณเตŠเดจเตเดจเตเด‚ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดŽเดธเดฟ เดฎเต‹เดกเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจ เด•เตเดฒเดฏเดจเตเดฑเตเด•เตพเด•เตเด•เต เด†เด•เตเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเดฟเดฒเต‡เด•เตเด•เต เด•เดฃเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเดพเดจเดพเด•เตเด‚. hostapd เดจเดฟเตผเดคเตเดคเดพเตป - Ctrl-C.

เดธเดฟเดธเตเดฑเตเดฑเด‚ เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเตฝ hostapd เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเด• เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเดคเต. เดจเดฟเด™เตเด™เตพ เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ (systemctl hostapd เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เตเด•), เด…เดŸเตเดคเตเดค เดฑเต€เดฌเต‚เดŸเตเดŸเดฟเดจเต เดถเต‡เดทเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฐเต‹เด—เดจเดฟเตผเดฃเตเดฃเดฏเดคเตเดคเต‹เดŸเต† "เดฐเด•เตเดคเดคเตเดคเดฟเตฝ เด‰เดฐเตเดณเตเดจเตเดจ" เด’เดฐเต เดญเต‚เดคเดคเตเดคเต† เดฒเดญเดฟเด•เตเด•เตเด‚ "เด‡เดจเตเดฑเตผเดซเต‡เดธเต wl0 เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ". "เดธเดฎเดพเดจเตเดคเดฐ เด•เตเดดเดชเตเดชเดคเตเดคเดฟเดจเตเดฑเต†" เดซเดฒเดฎเดพเดฏเดฟ, เด•เต‡เตผเดฃเตฝ เดตเดฏเตผเดฒเต†เดธเต เด…เดกเดพเดชเตเดฑเตเดฑเตผ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดตเต‡เด—เดคเตเดคเดฟเตฝ hostapd เด†เดฐเด‚เดญเดฟเดšเตเดšเต.

เด‡เตปเดฑเตผเดจเต†เดฑเตเดฑเต เดชเตเดฐเดคเดฟเดตเดฟเดงเดฟเด•เตพ เดจเดฟเดฑเดžเตเดžเดคเดพเดฃเต: เดกเต†เดฎเตบ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเตเดณเตเดณ เดจเดฟเตผเดฌเดจเตเดงเดฟเดค เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตฝ เดฎเตเดคเตฝ (เดจเดฟเดฐเดตเดงเดฟ เดฎเดฟเดจเดฟเดฑเตเดฑเต), เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเตเดฑเต† เดฐเต‚เดชเด‚ เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดนเต‹เดธเตเดฑเตเดฑเตเดชเดพเดกเต (เดตเต€เดฃเตเดŸเตเด‚) เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดฎเดฑเตเดฑเตŠเดฐเต เดกเต†เดฎเตบ เดตเดฐเต†. เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ เดคเดฟเด•เดšเตเดšเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเดฃเต, เดชเด•เตเดทเต‡ เดตเดณเดฐเต† เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸเดคเดพเดฃเต. เดธเดนเดพเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เดฎเดนเดพเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต systemd เด…เดคเดฟเดจเตเดฑเต† "เดฒเด•เตเดทเตเดฏเด™เตเด™เดณเตเด‚" "เดœเต‹เดฒเดฟเด•เดณเตเด‚" "เด†เดถเตเดฐเดฟเดคเดคเตเดตเด™เตเด™เดณเตเด‚".

เดตเดฟเดคเดฐเดฃ เดธเต‡เดตเดจ เดซเดฏเตฝ เดชเด•เตผเดคเตเดคเตเด• /etc/systemd/system/hostapd.service:

# cp -fv /usr/lib/systemd/system/hostapd.service /etc/systemd/system

เด…เดคเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเต‹เดฎเดฟเดฒเต‡เด•เตเด•เต เด•เตเดฑเดฏเตเด•เตเด•เตเด•:

[Unit]
Description=Hostapd IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
After=sys-subsystem-net-devices-wl0.device
BindsTo=sys-subsystem-net-devices-wl0.device

[Service]
Type=forking
PIDFile=/run/hostapd.pid
ExecStart=/usr/sbin/hostapd /etc/hostapd/hostapd.conf -P /run/hostapd.pid -B

[Install]
WantedBy=sys-subsystem-net-devices-wl0.device

เดชเตเดคเดฟเดฏ เดŸเดพเตผเด—เต†เดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต hostapd-เดจเตเดฑเต† เดกเตˆเดจเดพเดฎเดฟเด•เต เดฌเตˆเตปเดกเดฟเด‚เด—เดฟเดฒเดพเดฃเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดค เดธเตผเดตเต€เดธเต เดซเดฏเดฒเดฟเดจเตเดฑเต† เดฎเดพเดจเตเดคเตเดฐเดฟเด•เดค - wl0 เด‡เดจเตเดฑเตผเดซเต‡เดธเต. เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดฎเตเดชเต‹เตพ, เดกเต†เดฎเตบ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต; เด…เดคเต เด…เดชเตเดฐเดคเตเดฏเด•เตเดทเดฎเดพเด•เตเดฎเตเดชเต‹เตพ, เด…เดคเต เดจเดฟเตผเดคเตเดคเตเดจเตเดจเต. เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฑเต€เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดพเดคเต† เดคเดจเตเดจเต† เด‡เดคเต†เดฒเตเดฒเดพเด‚ เด“เตบเดฒเตˆเดจเดฟเดฒเดพเดฃเต. เดฏเตเดŽเดธเตเดฌเดฟ เดตเตˆเดซเตˆ เด…เดกเดพเดชเตเดฑเตเดฑเตผ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดˆ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเด‚.

เด‡เดชเตเดชเต‡เดพเตพ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเตเด‚:

# systemctl enable hostapd
# reboot

7. เด‡เดชเตโ€Œเดฑเตเดฑเดฌเดฟเดณเตเด•เตพ

"เดŽเดจเตเดคเดพ???" ยฉ เด…เดคเต†, เด…เดคเต†! เด’เดจเตเดจเตเดฎเดฟเดฒเตเดฒ systemd. เดชเตเดคเดฟเดฏ เดตเดฟเดšเดฟเดคเตเดฐเดฎเดพเดฏ เดธเด‚เดฏเต‹เดœเดจเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ (เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดซเดฏเตผเดตเดพเตพเดกเต), เด…เดตเดธเดพเดจเด‚ เด’เดฐเต‡ เด•เดพเดฐเตเดฏเด‚ เดคเดจเตเดจเต† เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดจเดฒเตเดฒ เดชเดดเดฏเดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚ iptables, เด†เดฐเตเดŸเต† เดธเต‡เดตเดจเด™เตเด™เตพ, เด†เดฐเด‚เดญเดฟเดšเตเดšเดคเดฟเดจเตเดถเต‡เดทเด‚, เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดจเดฟเดฏเดฎเด™เตเด™เตพ เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดคเดพเดฎเดธเด•เตเด•เดพเดฐเดจเดพเดฏเดฟ เดคเตเดŸเดฐเดพเดคเต†เดฏเตเด‚ เดตเดฟเดญเดตเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเต†เดฏเตเด‚ เดจเดฟเดถเดฌเตเดฆเดฎเดพเดฏเดฟ เดทเดŸเตเดŸเตเดกเต—เตบ เดšเต†เดฏเตเดฏเตเด‚. systemd เดจเต เด’เดฐเต เด—เด‚เดญเต€เดฐเดฎเตเดฃเตเดŸเต IPMasquerade=, เดŽเดจเตเดจเดพเตฝ เดžเด™เตเด™เตพ เด‡เดชเตเดชเต‹เดดเตเด‚ เดตเดฟเดฒเดพเดธ เดตเดฟเดตเตผเดคเตเดคเดจเดตเตเด‚ (NAT) เดซเดฏเตผเดตเดพเดณเตเด‚ iptables-เดจเต† เดญเดฐเดฎเต‡เตฝเดชเตเดชเดฟเด•เตเด•เตเด‚.

เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเด•:

# yum install iptables-services
# systemctl enable iptables ip6tables

iptables เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เด’เดฐเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดพเดฏเดฟ เดธเด‚เดญเดฐเดฟเด•เตเด•เดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต (เด‰เดฆเดพเดนเดฐเดฃเด‚):

#!/bin/bash

#
# Disable IPv6
#
ip6tables --flush
ip6tables --delete-chain

ip6tables --policy INPUT   DROP
ip6tables --policy FORWARD DROP
ip6tables --policy OUTPUT  DROP

ip6tables-save > /etc/sysconfig/ip6tables
systemctl restart ip6tables

#
# Cleaning
#
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

#
# Loopback, lan
#
iptables -A INPUT -i lo  -j ACCEPT
iptables -A INPUT -i lan -j ACCEPT

#
# Ping, Established
#
iptables -A INPUT -p icmp  --icmp-type echo-request    -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#
# NAT
#
iptables -t nat -A POSTROUTING -o wan -j MASQUERADE

#
# Saving
#
iptables-save > /etc/sysconfig/iptables
systemctl restart iptables

เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดžเด™เตเด™เตพ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดฑเดพเดธเตเดฌเต†เดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดคเดฟเดฏ เดตเดฏเตผเดกเต เดŽเดธเตเดŽเดธเตเดŽเดšเตเดšเต เด•เดฃเด•เตเดทเดจเตเด•เตพ เดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เดจเดทเตเดŸเดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด…เดคเต เดถเดฐเดฟเดฏเดพเดฃเต, เดžเด™เตเด™เตพ เด’เดฐเต Wi-Fi เดฑเต‚เดŸเตเดŸเตผ เด‰เดฃเตเดŸเดพเด•เตเด•เดฟ, "เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เดตเดดเดฟ" เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ เดจเดฟเดฐเต‹เดงเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต - เด‡เดชเตเดชเต‹เตพ "เดตเดพเดฏเตเดตเดฟเดฒเต‚เดŸเต†" เดฎเดพเดคเตเดฐเด‚. เดžเด™เตเด™เตพ เดฆเดพเดคเดพเดตเดฟเดจเตเดฑเต† เด‡เดฅเตผเดจเต†เดฑเตเดฑเต เด•เต‡เดฌเดฟเตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเต เดธเตผเดซเดฟเด‚เด—เต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต!

8. เดฌเต‹เดฃเดธเต: +2,4GHz

เดฎเตเด•เดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดš เดกเตเดฐเต‹เดฏเดฟเด‚เด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเดพเตป เด†เดฆเตเดฏเดคเตเดคเต† เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดฑเต‚เดŸเตเดŸเตผ เด…เดธเด‚เดฌเดฟเตพ เดšเต†เดฏเตเดคเดชเตเดชเต‹เตพ, เดตเตˆเดซเตˆ เดกเดฟเดธเตˆเตป เดชเดฐเดฟเดฎเดฟเดคเดฟเด•เตพ เด•เดพเดฐเดฃเด‚ โ€œเดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟโ€ เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเดพเดคเตเดค เดจเดฟเดฐเดตเดงเดฟ เด—เดพเดกเตโ€Œเดœเต†เดฑเตเดฑเตเด•เตพ เดŽเดจเตเดฑเต† เดตเต€เดŸเตเดŸเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเดฟ. 802.11b/g/n-เตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เดฑเต‚เดŸเตเดŸเตผ เดชเตเดจเดƒเด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เตบเดธเตเดชเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด†เดฏเดฟเดฐเตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เดˆ เด•เต‡เดธเดฟเตฝ เดชเดฐเดฎเดพเดตเดงเดฟ เดตเต‡เด—เดค "เดตเดพเดฏเตเดตเดฟเตฝ" 40 Mbit เด•เดตเดฟเดฏเดพเตป เดชเดพเดŸเดฟเดฒเตเดฒ, เดŽเดจเตเดฑเต† เดชเตเดฐเดฟเดฏเดชเตเดชเต†เดŸเตเดŸ เด‡เดจเตเดฑเตผเดจเต†เดฑเตเดฑเต เดฆเดพเดคเดพเดตเต เดŽเดจเดฟเด•เตเด•เต 100 (เด•เต‡เดฌเดฟเตพ เดตเดดเดฟ) เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเด‚ เด‡เดคเดฟเดจเด•เด‚ เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเดšเตเดšเต: 2,4 GHz เด†เดตเตƒเดคเตเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† Wi-Fi เด‡เดจเตเดฑเตผเดซเต‡เดธเต, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เด†เด•เตเดธเดธเต เดชเต‹เดฏเดฟเดจเตเดฑเต. เด…เดŸเตเดคเตเดคเตเดณเตเดณ เด’เดฐเต เดธเตเดฑเตเดฑเดพเดณเดฟเตฝ เดžเดพเตป เด†เดฆเตเดฏเดคเตเดคเต‡เดคเดฒเตเดฒ, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† USB Wi-Fi "เดตเดฟเดธเดฟเตฝ" เดตเดพเด™เตเด™เดฟ. เดšเดฟเดชเตโ€Œเดธเต†เดฑเตเดฑเต, เดŽเด†เตผเดŽเด‚ เดฒเดฟเดจเด•เตเดธเต เด•เต‡เตผเดฃเดฒเตเด•เดณเตเดฎเดพเดฏเตเดณเตเดณ เด…เดจเตเดฏเต‹เดœเตเดฏเดค, เดŽเดชเดฟ เดฎเต‹เดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เดŽเดจเตเดจเดฟเดตเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดšเต‹เดฆเตเดฏเด™เตเด™เตพ เดตเดฟเตฝเดชเตเดชเดจเด•เตเด•เดพเดฐเดจเต† เดตเต‡เดฆเดจเดฟเดชเตเดชเดฟเดšเตเดšเต (เด…เดตเดจเดพเดฃเต เด†เดฆเตเดฏเด‚ เด†เดฐเด‚เดญเดฟเดšเตเดšเดคเต).

เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดตเตˆ-เดซเตˆ เด…เดกเดพเดชเตเดฑเตเดฑเดฑเตเดฎเดพเดฏเดฟ เดธเดพเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเดฟ เดžเด™เตเด™เตพ "เดตเดฟเดธเดฟเตฝ" เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด†เดฆเตเดฏเด‚, เดจเดฎเตเด•เตเด•เต เด…เดคเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดฎเดพเดฑเตเดฑเดพเด‚ wl1:

# cat /sys/class/net/wlan0/address 
b0:6e:bf:xx:xx:xx

/etc/systemd/network/wl1.link:

[Match]
MACAddress=b0:6e:bf:xx:xx:xx

[Link]
Name=wl1

เดชเตเดคเดฟเดฏ Wi-Fi เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเตเดฑเต† เดฎเดพเดจเต‡เดœเตเดฎเต†เดจเตเดฑเต เดžเด™เตเด™เตพ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• hostapd เดกเต†เดฎเดฃเดฟเดจเต† เดเตฝเดชเตเดชเดฟเด•เตเด•เตเด‚, เด…เดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เด•เตผเดถเดจเดฎเดพเดฏเดฟ เดจเดฟเตผเดตเดšเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ "เดตเดฟเดธเดฟเตฝ" เดธเดพเดจเตเดจเดฟเดงเตเดฏเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดจเดฟเตผเดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚: wl1.

เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเตฝ /etc/hostapd/hostapd2.conf:

ssid=rpi2
wpa_passphrase=1234567890

#channel=1
#channel=6
channel=11

interface=wl1
bridge=lan

driver=nl80211

auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

macaddr_acl=0

hw_mode=g
wmm_enabled=1

# N
ieee80211n=1
require_ht=1
ht_capab=[HT40][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40]

เดˆ เดซเดฏเดฒเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดจเต‡เดฐเดฟเดŸเตเดŸเต USB Wi-Fi เด…เดกเดพเดชเตเดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เดฎเต‹เดกเดฒเดฟเดจเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ เด’เดฐเต เดธเดพเดงเดพเดฐเดฃ เด•เต‹เดชเตเดชเดฟ/เดชเต‡เดธเตเดฑเตเดฑเต เดจเดฟเด™เตเด™เดณเต† เดชเดฐเดพเดœเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเต‡เด•เตเด•เดพเด‚.

เดตเดฟเดคเดฐเดฃ เดธเต‡เดตเดจ เดซเดฏเตฝ เดชเด•เตผเดคเตเดคเตเด• /etc/systemd/system/hostapd2.service:

# cp -fv /usr/lib/systemd/system/hostapd.service /etc/systemd/system/hostapd2.service

เด…เดคเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเต‹เดฎเดฟเดฒเต‡เด•เตเด•เต เด•เตเดฑเดฏเตเด•เตเด•เตเด•:

[Unit]
Description=Hostapd IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
After=sys-subsystem-net-devices-wl1.device
BindsTo=sys-subsystem-net-devices-wl1.device

[Service]
Type=forking
PIDFile=/run/hostapd2.pid
ExecStart=/usr/sbin/hostapd /etc/hostapd/hostapd2.conf -P /run/hostapd2.pid -B

[Install]
WantedBy=sys-subsystem-net-devices-wl1.device

hostapd-เดจเตเดฑเต† เด’เดฐเต เดชเตเดคเดฟเดฏ เด‰เดฆเดพเดนเดฐเดฃเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเด• เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเดคเต:

# systemctl enable hostapd2

เด…เดคเตเดฐเดฏเต‡เดฏเตเดณเตเดณเต‚! "เดตเดฟเดธเดฟเตฝ", "เดฑเดพเดธเตเดฌเต†เดฑเดฟ" เดŽเดจเตเดจเดฟเดต เดตเดฒเดฟเด•เตเด•เตเด•, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดšเตเดฑเตเดฑเตเดฎเตเดณเตเดณ เดตเดฏเตผเดฒเต†เดธเต เดจเต†เดฑเตเดฑเตเดตเตผเด•เตเด•เตเด•เตพ เดจเต‹เด•เตเด•เตเด•.

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดฏเตเดŽเดธเตเดฌเดฟ เดตเตˆเดซเตˆ เด…เดกเดพเดชเตเดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เด—เตเดฃเดจเดฟเดฒเดตเดพเดฐเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟเดฏเตเดŸเต† เดชเดตเตผ เดธเดชเตเดฒเตˆเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚ เดžเดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเต เดจเตฝเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดš "เดšเต‚เดŸเตเดณเตเดณ เดตเดฟเดธเดฟเตฝ" เดšเดฟเดฒเดชเตเดชเต‹เตพ เดนเตเดฐเดธเตเดตเด•เดพเดฒ เดตเตˆเดฆเตเดฏเตเดค เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เตพ เด•เดพเดฐเดฃเด‚ "เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดซเตเดฐเต€เดธเดฟเด‚เด—เดฟเดจเต" เด•เดพเดฐเดฃเดฎเดพเด•เตเด‚.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•