#author("2025-01-05T23:57:20+09:00","","")
#author("2025-01-06T00:24:38+09:00","","")
[[Smile:D]]


* Wifi アクセスポイント設定 [#g41d32a9]

Wifi のクライアント + アクセスポイント両方設定する場合、
仮想インタフェースを追加して対応します。


** デバイス確認 [#o95a3449]
 iw dev
 iw phy

** 仮想インタフェース追加 [#e2fbf50d]
 sudo iw phy phy0 interface add <インタフェース名> type __ap
 sudo iw phy phy0 interface add <インタフェース名(例:ap0> type __ap
-失敗する場合
 # hostapd が動いている場合停止させる。
 systemctl stop hostapd
** MACアドレス変更する場合(通常はそのままでよいかと) [#lb6b2455]
 ip link set <インタフェース名> address <MACアドレス :区切り>

** 再起動後もデバイスを有効にするために [#x63cc627]
 /etc/udev/rules.d/99-<devicename>.rules

 SUBSYSTEM=="ieee80211", ACTION=="add|change", ATTR{macaddress}=="dc:a6:32:a8:e0:24", KERNEL=="phy0", \
  RUN+="/sbin/iw phy phy0 interface add <デバイス名> type __ap", \
  RUN+="/bin/ip link set <デバイス名> address <MACアドレス>"

ルールを適用
 udevadm control --reload-rules
 udevadm trigger

** DHCPサーバー設定 [#b4a81448]
-インストール
 sudo apt install dnsmasq
-設定
 /etc/dnsmasq.conf

 interface=<インタフェース名>
 dhcp-range=<開始IP>,<終了IP>,<時間>
 例)
 interface=ap0
 dhcp-range=172.16.1.100,172.16.1.200,12h

** DHCPクライアント設定 [#u97ad280]
 /etc/dhcpcd.conf

 interface ap0
 static ip_address=172.16.1.1/24
 static routers=172.16.1.1
 static domain_name_server=172.16.7.1 8.8.8.8
 # wpa_supplicant を自動起動しないように。
 nohook wpa_supplicant
 
 interface wlan0
 nohook wpa_supplicant

** HOSTAPD 設定 [#p2662f31]
 /etc/hostapd/hostapd.conf

 ctrl_interface=/var/run/hostapd
 ctrl_interface_group=0
 interface=ap0
 driver=nl80211
 ssid=<SSID>
 hw_mode=g
 country_code=JP
 channel=6
 ieee80211n=1
 wmm_enabled=1
 ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
 macaddr_acl=0
 auth_algs=1
 ignore_broadcast_ssid=0
 wpa=2
 wpa_key_mgmt=WPA-PSK
 wpa_pairwise=TKIP
 wpa_passphrase=<パスフレーズ>
 rsn_pairwise=CCMP


** Wifi クライアントの設定 [#ze1fa903]
[[Raspberry Pi/Raspbian/Wifi 設定]] を参照し、
wpa_supplicant.conf を、wpa_supplicant-wlan0.conf とする。
[[Raspberry Pi/Raspbian/Wifi 設定]] を参照

/etc/systemd/system/wpa_supplicant@wlan0.service ファイルを作成し以下記載する。
 [Unit]
 Description=WPA supplicant for wlan0
 After=network.target
 
 [Service]
 ExecStart=/sbin/wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant- wlan0.conf
 Restart=always
 
 [Install]
 WantedBy=multi-user.target

サービス有効化、開始
 sudo systemctl enable wpa_supplicant@wlan0
 sudo systemctl start wpa_supplicant@wlan0


**DHCP にてIP取得設定 [#pf23aec8]
/etc/systemd/network/20-wlan0.network
 [Match]
 Name=wlan0
 
 [Network]
 DHCP=yes

-サービスを再起動
 systemctl restart systemd-networkd

-IP確認
 ip addr show dev wlan0

トップ   差分 バックアップ リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS