He nui nga korero kei runga i te Ipurangi mo te hanga i nga tohu uru Wi-Fi i runga i te PC-poari-kotahi Raspberry. Hei tikanga, ko te tikanga tenei ma te whakamahi i te punaha whakahaere Raspbian taketake ki te Raspberry.
I te mea he piripono ki nga punaha RPM, kaore au i kaha ki te paahi i tenei merekara iti me te kore e whakamatau i taku CentOS aroha ki runga.
Kei te tuhinga nga tohutohu mo te hanga i te pouara Wi-Fi 5GHz/AC mai i te Raspberry Pi 3 Model B+ i runga i te punaha whakahaere CentOS. He maha nga tinihanga paerewa engari he iti noa te mohio, me te mea he putea - he tuhi mo te hono atu i nga taputapu Wi-Fi ki te Raspberry, ka taea te mahi i te wa kotahi i roto i nga momo momo (2,4+5GHz).
(he ranunga o nga whakaahua e waatea ana)
Kia mahara tonu tatou ko etahi tere o te ao e kore e mahi. Ka pehia e ahau te morahi o te 100 Mbps mai i taku Raspberry i runga i te rangi, ka kapi tenei i te tere o taku kaiwhakarato Ipurangi. He aha te take e hiahia ana koe ki te AC puhoi, mena ka taea e koe te tiki i te haurua gigabit ahakoa i runga i te N? Mena kua patai koe ki a koe ano i tenei patai, haere ki te toa ki te hoko i tetahi pouara tuuturu me nga antenna o waho e waru.
0. He aha e hiahia ana koe
- Ko te tikanga, ko te "hua raspberry" ake he orite: Pi 3 Model B+ (ki te whakatutuki i nga tere me nga waahana 5GHz e hiahiatia ana);
- microSD pai> = 4GB;
- Te teihana mahi me te Linux me te kaituhi / kaituhi microSD;
- Ko te waatea o nga pukenga i roto i te Linux, ko te tuhinga mo te Geek kua whakangungua;
- Whatunga Waea (eth0) hononga i waenga i te Raspberry me te Linux, e whakahaere ana i te tūmau DHCP i te whatunga paetata me te uru Ipurangi mai i nga taputapu e rua.
He korero iti mo te waahi whakamutunga. "Ko tehea te tuatahi, ko te hua manu, ko ..." me pehea te hanga i te pouara Wi-Fi i te kore o nga taputapu uru Ipurangi? Me waiho tenei mahi whakangahau i waho o te waahanga o te tuhinga ka whakaaro noa kei te hono te Raspberry ki te whatunga rohe ma te waea me te uru ki te Ipurangi. I tenei keehi, kaore e hiahiatia he pouaka whakaata taapiri me te manipulator hei whakarite i te "rōpere".
1. Tāuta CentOS
I te wa e tuhi ana i tenei tuhinga, ko te putanga whakahaere o CentOS i runga i te taputapu he 32-bit. I tetahi waahi i runga i te Paetukutuku Ao I kitea e au nga whakaaro ko te mahi o aua OS i runga i te hoahoanga ARM 64-bit kua heke iho ki te 20%. Ka waiho e ahau tenei wa kaore he korero.
I runga i te Linux, tango i te ahua iti me te kernel "-RahiperePI-"ka tuhi ki te microSD:
# xzcat CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1810-sda.raw.xz |
dd of=/dev/mmcblk0 bs=4M
# sync
I mua i te tiimata ki te whakamahi i te ahua, ka tangohia e matou te wehewehenga SWAP mai i a ia, ka whakawhānuihia te pakiaka ki te katoa o te rōrahi e waatea ana ka whakakorehia a SELinux. He ngawari te algorithm: hanga he kape o te pakiaka i runga i te Linux, whakakorehia nga waahanga katoa mai i te microSD engari ko te tuatahi (/boot), hanga he pakiaka hou ka whakahoki mai i ona ihirangi mai i te kape.
He tauira o nga mahi e hiahiatia ana (whakaputa papatohu kino)
# 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
I muri i te wetewete i nga ihirangi o te arai pakiaka, kua tae ki te waa ki te whakarereke i a ia.
Monokia te SELinux ki roto /mnt/etc/selinux/config:
SELINUX=disabled
Whakatikatika /mnt/etc/fstab, ka waiho kia rua noa nga urunga mo nga wehewehenga: boot (/boot, kahore he huringa) me te pakiaka (ka huri tatou i te uara UUID, ka kitea ma te ako i te putanga o te whakahau blkid ki Linux):
UUID=6a1a0694-8196-4724-a58d-edde1f189b31 / ext4 defaults,noatime 0 0
UUID=6938-F4F2 /boot vfat defaults,noatime 0 0
Ka mutu, ka hurihia e matou nga tawhā boot kernel: ka tohua e matou he waahi hou mo te wehewehenga pakiaka, ka whakakorehia te putanga o nga korero patuiro me te (mehemea) ka aukati i te kernel ki te tautapa i nga wahitau IPv6 ki nga hononga whatunga:
# cd
# umount /mnt
# mount /dev/mmcblk0p1 /mnt
Anei nga korero /mnt/cmdline.txt ki te ahua e whai ake nei (kotahi raina kaore he tohuhono):
root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait quiet ipv6.disable_ipv6=1
Kua oti:
# cd
# umount /mnt
# sync
Ka whakatikahia e matou te microSD ki roto i te "rōpere", ka whakarewahia ka uru ki te whatunga ma te ssh (pakiaka / centos).
2. Te whakatu CentOS
Ko nga nekehanga tuatahi e toru e kore e wiri: Tuhinga o mua, yum -y whakahou, tīmata anō.
Ka tukuna e matou te whakahaere whatunga whatunga:
# yum install systemd-networkd
# systemctl enable systemd-networkd
# systemctl disable NetworkManager
# chkconfig network off
Waihangahia he konae (me nga whaiaronga) /etc/systemd/network/eth0.network:
[Match]
Name=eth0
[Network]
DHCP=ipv4
Ka whakaara ano i te "rōpere" ka uru ano ki te whatunga ma te ssh (ka huri pea te wahitau IP). Kia tupato ki nga mea e whakamahia ana /etc/resolv.conf, i hangaia i mua e te Kaiwhakahaere Whatunga. Na reira, ki te raruraru ki te whakatau, whakatikahia nga ihirangi. Whakamahi kua whakatauhia e kore matou e pai.
Ka tangohia e matou te "kaore e tika", whakatika me te tere o te utaina o te 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
Ko wai e hiahia ana cron a ko wai e kore e keri i te hanga-i roto
# mkdir /var/log/journal
# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald
# vi /etc/systemd/journald.conf
Monokia te whakamahi i te IPv6 e nga ratonga taketake (mehemea ka hiahiatia)/ etc / ssh / sshd_config:
AddressFamily inet
/etc/sysconfig/chronyd:
OPTIONS="-4"
Ko te whaitake o te wa i runga i te "rōpere" he mea nui. I te mea kei waho o te pouaka karekau he kaha taputapu ki te whakaora i te ahua o te karaka i te whakaara ano, me tukutahi. He daemon tino pai me te tere mo tenei tiimona - kua oti te whakauru me te tiimata aunoa. Ka taea e koe te huri i nga tūmau NTP ki nga mea tata.
/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
Hei tautuhi i te rohe wa ka whakamahia e matou tinihanga. I te mea ko ta matou whainga ko te hanga i tetahi pouara Wi-Fi e mahi ana i nga iarere 5GHz, ka whakarite maatau mo nga ohorere i mua. kaiwhakariterite:
# yum info crda
Whakarāpopototanga: Daemon hanganga ture mo te whatunga ahokore 802.11
Ko tenei hoahoa kino, i runga ano i te waahi waahi, "ka aukati" te whakamahi (i Russia) o nga waarangi 5GHz me nga waahana me nga nama "tiketike". Ko te mahi he ki te whakarite i te waahi waahi me te kore e whakamahi i nga ingoa o nga whenua/taone, ara, hei utu mo:
# timedatectl set-timezone Europe/Moscow
Ka pehi tatou:
# timedatectl set-timezone Etc/GMT-3
Na nga pa whakamutunga ki te whakapai makawe o te punaha:
# 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. Tāpiri-ake CentOS
Ko nga mea katoa i korerohia i runga ake nei ka taea te whakaaro he tohutohu katoa mo te whakauru i te "vanilla" CentOS ki te Raspberry Pi. Me mutu koe ki te PC e (anō) pūtu i roto i te iti iho i te 10 hēkona, whakamahi iti iho i te 15 Megabytes o te RAM me te 1.5 Gigabytes o microSD (tino iti iho i te 1 Gigabyte na te mea kaore i oti /boot, engari kia pono).
Hei whakauru i nga rorohiko urunga Wi-Fi ki runga i tenei punaha, me whakawhanuihia e koe nga kaha o te tohatoha CentOS paerewa. Tuatahi, me whakapai ake te atekōkiri (firmware) o te urutau Wi-Fi i hangaia. E kii ana te wharangi kaainga kaupapa:
Wifi i runga i te Raspberry 3B me te 3B+
Ko nga konae firmware Raspberry PI 3B/3B+ kaore e whakaaetia kia tohatohahia e te Kaupapa CentOS. Ka taea e koe te whakamahi i nga tuhinga e whai ake nei ki te mohio ki te take, te tiki i te firmware me te whakarite i te wifi.
Ko nga mea e rahuitia ana mo te kaupapa CentOS kaore e rahuitia mo tatou mo te whakamahi whaiaro. Ka whakakapihia e maatau te tohatoha Wi-Fi firmware i CentOS me te mea e rite ana mai i nga kaiwhakawhanake Broadcom (ko enei putunga rua e kinongia ana ...). Ma tenei, ina koa, ka taea e koe te whakamahi AC i roto i te aratau uru.
Whakahoutanga firmware Wi-FiKimihia te tauira taputapu me te putanga firmware o naianei:
# 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
Ka kite matou ko te putanga firmware ko 7.45.18 i tuhia i te 01.03.2015/XNUMX/XNUMX, ka maumahara ki te huinga tau e whai ake nei: 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
Ko nga konae maru urutau Wi-Fi ka puta me kape me whakakapi ki te "rōpere" ki roto i te whaiaronga /usr/lib/firmware/brcm/
Ka whakaara ano tatou i te pouara a meake nei ka ataata pai:
# 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
Putanga: 7.45.154 i tuhia i te 27.02.2018/XNUMX/XNUMX.
A ko te akoranga 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. Te whirihoranga whatunga me nga wero kei mua
Ka rite ki ta matou i whakaae ai i runga ake nei, ko te "raspberry" e hono ana ma te "waea" ki te whatunga rohe. Me whakaaro tatou ka tukuna e te kaiwhakarato te uru ki te Ipurangi i roto i te huarahi rite: ko te wahitau kei runga i te whatunga whanui ka tukuna e te tūmau DHCP (pea me te here MAC). I tenei keehi, i muri i te tatūnga whakamutunga o te rōpere, me "mono" te taura o te kaiwhakarato ki roto ka oti koe. Whakaaetanga whakamahi systemd-whatungad - te kaupapa o te tuhinga motuhake, kaore i te korerohia i konei.
Ko te (ng) atanga Wi-Fi o Raspberry he kupenga paetata, a ko te urutau Ethernet (eth0) i hangaia ki waho he mea waho. Me tatau te whatunga paetata, hei tauira: 192.168.0.0/24. Wāhitau rōpere: 192.168.0.1. Ka mahi tetahi tūmau DHCP i runga i te whatunga o waho (Ipurangi).
Hurorirori kau (lyrical digression)Kua whakahiatotia e Lennart Pottering tana ake kaupapa pūnaha Tino pai. Tenei pūnaha he tere te whakarewa i etahi atu hotaka, na te kore e whai taima ki te whakaora mai i te pupuhi o te whiowhio a te kaiwawao, ka tutuki, ka hinga i te timatanga me te kore e timata i te huarahi arai.
Engari ko te mea nui, ko te whakaraerae kaha o nga mahi kua whakarewahia i te timatanga o te punaha OS he momo "piriti kaihe" mo nga tohunga mohio LSB raupapa. Waimarie, ko te kawe mai i tenei "hepohepo whakarara" he maamaa noa, ahakoa kaore i te maarama.
Ka hangaia e matou nga hononga piriti mariko e rua me nga ingoa tonu: lan и wan. Ka "hono" matou i te (ng) urutau Wi-Fi ki te tuatahi, me te eth0 "rōpere" ki te tuarua.
/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=ae ka whakakore i te hiahia ki te tohu ki te kernel ma te sysctl kia taea ai te ararere.
MACAddress= Kia whakakorehia te korero me te whakarereke mehemea e tika ana.
Tuatahi ka "hono" tatou eth0. Ka mahara matou ki te "raruraru rite" ka whakamahi noa i te wahitau MAC o tenei atanga, ka kitea, hei tauira, penei:
# cat /sys/class/net/eth0/address
Hanga tatou /etc/systemd/network/eth.network:
[Match]
MACAddress=b8:27:eb:xx:xx:xx
[Network]
Bridge=wan
Ka mukua e matou te konae whirihoranga o mua eth0, whakaara ano i te Raspberry ka uru ki te whatunga (ka huri pea te wahitau IP):
# rm -fv /etc/systemd/network/eth0.network
# reboot
5.DNSMASQ
Mo te hanga i nga tohu uru Wi-Fi, kaore he mea e pa ana ki te tokorua reka dnsmasq + hostapd kaore ano kia mohio. Ki taku whakaaro.
Mena ka wareware tetahi, ka...
Me timata ma te dnsmasq:
# yum install dnsmasq
Tauira /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
whakatikahia ki to hiahia.
pakupaku /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
Ko te "makutu" kei konei kei roto i te tawhā here-hihiri, e kii ana ki te dnsmasq daemon kia tatari kia puta ra ano ki te punaha atanga=lan, kaua hoki e ngenge i te ahua o te mokemoke whakakake i muri i te timatanga.
# systemctl enable dnsmasq
# systemctl start dnsmasq; journalctl -f
6. HOSTAPD
Ka mutu, ko nga whirihoranga hostapd makutu. Kaore au e ruarua kei te panui tetahi i tenei tuhinga ki te rapu i enei rarangi taonga.
I mua i te whakauru i te hostapd, me hinga koe i te "raruraru rite". Ka taea e te urutau Wi-Fi whakaurua wlan0 te huri i tona ingoa ki te wlan1 ina hono ana i etahi atu taputapu Wi-Fi USB. Na reira, ka whakatikahia e matou nga ingoa atanga i runga i te huarahi e whai ake nei: ka puta mai he ingoa ahurei mo nga urutau (wirekore) ka herea ki nga wahitau MAC.
Mo te urutau Wi-Fi i roto, he wlan0 tonu:
# cat /sys/class/net/wlan0/address
b8:27:eb:xx:xx:xx
Hanga tatou /etc/systemd/network/wl0.link:
[Match]
MACAddress=b8:27:eb:xx:xx:xx
[Link]
Name=wl0
Inaianei ka tino mohio tatou wl0 - Ko te Wi-Fi hanga-i roto i tenei. Ka whakaara ano matou i te Raspberry ki te whakarite i tenei.
Tāuta:
# yum install hostapd wireless-tools
Kōnae whirihoranga /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
Ma te kore e wareware mo tetahi wa
# hostapd /etc/hostapd/hostapd.conf
Ka timata te hostapd ki te aratau tauwhitiwhiti, ka whakapaoho i tona ahuatanga ki te papatohu. Mena kaore he hapa, ka taea e nga kaihoko e tautoko ana i te aratau AC te hono atu ki te waahi uru. Hei aukati i te hostapd - Ctrl-C.
Ko nga mea katoa e toe ana ko te whakahohe i te hostapd i te tiimata o te punaha. Mena ka mahia e koe te mea paerewa (systemctl ka taea te hostapd), ka mutu te whakaara ano i muri mai ka taea e koe te tiki rewera "ka huri i roto i te toto" me te tohu "atanga wl0 kaore i kitea". Ko te hua o te "hepohepo whakarara," ka tere ake te tiimata o te hostapd i te kaara i kitea te urutau ahokore.
Kua ki tonu te Ipurangi i nga rongoa: mai i te waahi kua pehia i mua i te tiimata o te daemon (he maha nga meneti), ki tetahi atu daemon e aro turuki ana i te ahua o te atanga me te (anohi) ka tiimata i te papa manaaki. He tino mahi nga otinga, engari he tino kino. Ka karanga matou ki te rangatira nui mo te awhina pūnaha me ona "whangainga" me nga "mahi" me nga "whakaaronga".
Tāruatia te kōnae ratonga tohatoha ki /etc/systemd/system/hostapd.service:
# cp -fv /usr/lib/systemd/system/hostapd.service /etc/systemd/system
me te whakaiti i ona ihirangi ki te ahua e whai ake nei:
[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
Ko te makutu o te konae ratonga whakahou kei roto i te herenga hihiri o te hostapd ki te whaainga hou - te atanga wl0. Ka puta mai te atanga, ka timata te daemon; ka ngaro, ka mutu. Na tenei katoa kei runga ipurangi - me te kore e whakaara ano i te punaha. Ka tino whai hua tenei tikanga ina hono ana i te urutau Wi-Fi USB ki te Rahipere.
Inaianei ka taea e koe:
# systemctl enable hostapd
# reboot
7. IPTABLES
“Wha???” © Ae, ae! Karekau pūnaha. Kaore he huinga hou (i te ahua firewalld), ka mutu ano te mahi.
Kia whakamahia te mea tawhito pai iptables, ko ana ratonga, i muri i te tiimata, ka utaina nga ture whatunga ki roto i te kernel ka kati marie me te kore e noho noho me te kore e pau rawa. systemd he huatau IPMasquerade=, engari ka tukuna tonu e matou te whakamaoritanga wahitau (NAT) me te papangaahi ki nga iptables.
Tāuta:
# yum install iptables-services
# systemctl enable iptables ip6tables
He pai ake taku ki te penapena i te whirihoranga iptables hei tuhinga (tauira):
#!/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
Ka mahia e matou te tuhinga o runga ake nei ka ngaro te kaha ki te whakatu hononga SSH waea hou me te Raspberry. Ka tika, kua hangahia e matou he pouara Wi-Fi, he uru ki te "ma te Ipurangi" ka aukatihia e te taunoa - inaianei "i runga i te rangi". Ka honoa e matou te taura Ethernet a te kaiwhakarato ka timata ki te ngaru!
8. Takoha: +2,4GHz
I taku kohikohinga i te pouara Raspberry tuatahi ma te whakamahi i te tuhi i whakaahuatia i runga ake nei, i kitea e au he maha o nga taputapu i roto i taku whare na te mea he herenga hoahoa Wi-Fi, kaore e taea te kite i te "rōpere". Ko te whirihora i te pouara ki te mahi i roto i te 802.11b/g/n he kino, na te mea ko te tere teitei "i runga i te rangi" i tenei keehi kaore i neke atu i te 40 Mbit, a ka tukuna mai e taku kaiwhakarato Ipurangi tino pai te 100 (ma te taura).
Inaa, he otinga ki te raru kua oti te hanga: he atanga Wi-Fi tuarua e mahi ana i te auau o te 2,4 GHz, me te waahi uru tuarua. I tetahi toa tata i hokona e ahau ehara i te mea tuatahi, engari ko te tuarua o te USB Wi-Fi "whistle" i kitea e ahau. I mamae te kaihoko i nga paatai mo te chipset, te hototahi ki nga kakano ARM Linux me te kaha ki te mahi i te aratau AP (ko ia te tuatahi ki te tiimata).
Ka whirihorahia e matou te "whiowhio" ma te whakataurite me te urutau Wi-Fi i hangaia.
Tuatahi, me whakaingoa ano ki 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
Ka tukuna e matou te whakahaeretanga o te atanga Wi-Fi hou ki tetahi daemon hostapd motuhake, ka tiimata ka mutu i runga i te ahua o te "whiowhio" kua tautuhia i roto i te punaha: wl1.
Kōnae whirihoranga /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]
Ko nga mea kei roto i tenei konae ka whakawhirinaki tika ki te tauira o te urutau USB Wi-Fi, no reira ka kore koe e kape/whakapiri.
Tāruatia te kōnae ratonga tohatoha ki /etc/systemd/system/hostapd2.service:
# cp -fv /usr/lib/systemd/system/hostapd.service /etc/systemd/system/hostapd2.service
me te whakaiti i ona ihirangi ki te ahua e whai ake nei:
[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
Ko nga mea katoa e toe ana ko te whakahohe i tetahi tauira hou o te hostapd:
# systemctl enable hostapd2
Heoi ano! Toia te "whiowhio" me te "rōpere" ake, tirohia nga whatunga ahokore huri noa i a koe.
A, i te mutunga, e hiahia ana ahau ki te whakatupato ia koe mo te kounga o te USB Wi-Fi adapter me te mana o te Raspberry. Ko te whiowhio wera i etahi wa ka whakatio te rōpere na runga i nga raru hiko mo te wa poto.
Source: will.com