2022年1月13日 星期四

Raspberry pi as access point ( Bridge mode )

社區網路只給一個IP, 先前是用 usb wifi adapter , 讓 ubuntu PC 當 access point,

近來 WIFI 用得比較重, 這支小 usb wifi adapter 又慢又不穩. 

所以跑去買了 PCIE 有線網卡,  ubuntu NetworkManager 設為 "share to other computer", 就是個 router 了, 然後網線拉出來接旅行用的 AP, 設為 bridge mode, 就有個很穩的 wifi 了.

但是..., 還是有點麻煩, 要開關 wifi 得去按電源鍵

 (應該可以用 command nmcli 把PCIE網卡 down 下來吧? 現在才想到....)

最近在玩 RPI4, 忽然想起很久以前是把 RPI 當 AP 用的, 去找了做法:

https://www.raspberrypi.com/documentation/computers/configuration.html#setting-up-a-bridged-wireless-access-point

主要就是 

1. install hostapd, systemctl unmask/enable hostapd

2. 加 file 

/etc/systemd/network/bridge-br0.netdev

[NetDev]
Name=br0
Kind=bridge
/etc/systemd/network/br0-member-eth0.network
[Match]
Name=eth0

[Network]
Bridge=br0
systemctl enable systemd-networkd
 /etc/hostapd/hostapd.conf
country_code=TW
interface=wlan0
bridge=br0
ssid=MYSSID
hw_mode=g
channel=7
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=MYPASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
3. 改 /etc/dhcpcd.conf
開頭加 denyinterfaces wlan0 eth0, 尾加 interface br0
4. reboot
用 ubuntu PC ssh contro wifi :
1. ssh without password
  • ssh-keygen -t rsa 或 ssh-keygen -d (dsa) => 產生出 id_rsa, id_rsa.pub
  • scp id_rsa.pub server_hostname:~/.ssh/
  • ssh server_hostname
  • cat .ssh/id_rsa.pub >> .ssh/authorized_keys
  • 2. ssh command toggle wifi
    ssh -t pi@MYPI "sudo ifconfig" | grep wlan #check if wifi exist
    ssh -t pi@MYPI "sudo ifconfig wlan0 up/down"

    沒有留言:

    張貼留言