Raspberry Pi 4 Model B Wi-Fi AP ブリッジ化
sshする
code:bash
ssh yuiseki@yuiseki-pi-64.local
aptを更新する
初回起動直後はシステムクロックがズレているのでaptに失敗する
NTPが自動で時刻同期するまでしばらく待つ
以下のコマンドで様子を確認できる
code:bash
timedatectl status
とりあえずいつもの
code:bash
sudo apt update && sudo apt upgrade -y
aptでパッケージをインストールする
code:bash
sudo apt install -y git vim sed curl wget rsync jq tmux unzip
ビルド関係
code:bash
sudo apt install -y make build-essential autoconf automake cmake gcc g++
code:bash
sudo apt install -y libtool sqlite3 libsqlite3-dev
ネットワーク関係
code:bash
sudo apt install -y nginx iputils-ping whois dnsutils traceroute mtr nmap ndiff ncat
ビルド関連パッケージが必要(↑でやっていたら不要)
code:bash
sudo apt install -y git vim
dkmsが必要
code:bash
sudo apt install -y dkms
カーネルヘッダーが必要
code:bash
sudo apt install --reinstall raspberrypi-kernel raspberrypi-kernel-headers
32 bit Raspbianの場合のみ、罰があるので、以下が必要
code:bash
sudo vim /boot/config.txt
code:/boot/config.txt
arm_64bit=0
rtl8812auのビルドとインストール
code:bash
code:bash
cd rtl8812au
code:bash
sudo make dkms_install
wlan1が増えていることを確認する
code:bash
iw dev
または
code:bash
iwconfig
Wi-Fi APにしたい
hostapdを設定する
/etc/dhcpcd.confを設定
code:bash
sudo vim /etc/dhcpcd.conf
末尾に以下を追記
code:/etc/dhcpcd.conf
interface wlan1
static ip_address=192.168.10.1/24
nohook wpa_supplicant
hostapdをインストール
code:bash
sudo apt-get install -y hostapd
/etc/hostapd/hostapd.confを新規作成
code:bash
sudo vim /etc/hostapd/hostapd.conf
code:/etc/hostapd/hostapd.conf
country_code=JP
interface=wlan1
ssid=yuiseki-pi
hw_mode=g
channel=7
wpa=2
wpa_passphrase=kogaidan
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
hsotapdを自動起動する
code:bash
sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
この時点で再起動する
code:bash
sudo reboot
yuiseki-piというWi-Fi APが見えるはず
dnsmasqを設定する
code:bash
sudo apt-get install -y dnsmasq
/etc/dnsmasq.confを全部書き換える
一応オリジナルを残しておく
code:bash
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
code:bash
sudo vim /etc/dnsmasq.conf
code:/etc/dnsmasq.conf
# Listening interface
interface=wlan1
# Pool of IP addresses served via DHCP
dhcp-range=192.168.10.2,192.168.10.100,255.255.255.0,24h
# Local wireless DNS domain
domain=local
# Alias for this router
address=/yuiseki-pi-64.local/192.168.10.1
# for local name resolve
local=/local/
domain=local
expand-hosts
dnsmasqを自動起動する
code:bash
sudo systemctl enable dnsmasq
sudo systemctl start dnsmasq
/etc/hostsの末尾に以下を追加する
code:bash
sudo vim /etc/hosts
code:/etc/hosts
192.168.10.1 yuiseki-pi-64 yuiseki-pi-64.local
iptablesを設定する
/etc/sysctl.confを編集する
以下の行をアンコメントして保存する
code:bash
sudo vim /etc/sysctl.conf
code:/etc/sysctl.conf
net.ipv4.ip_forward=1
反映する
code:bash
sudo sysctl -p
code:bash
sudo DEBIAN_FRONTEND=noninteractive apt install -y netfilter-persistent iptables-persistent
iptablesを変更し、保存する
code:bash
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
code:bash
sudo netfilter-persistent save
この時点で再起動する
code:bash
sudo reboot