我正在开发一个运行 Yocto 的嵌入式系统。我使用以下命令创建了一个接入点:
iw dev wlan0 interface add wlan1 type __ap
ifconfig wlan1 hw ether 00:25:ca:07:0d:a6
ifconfig wlan1 192.168.3.1 up
hostapd /etc/hostapd.conf -B
udhcpd /etc/udhcpd.conf
我可以看到创建的 wifi 网络,并且可以使用我的 Ubuntu PC 连接到它。 IP已正确分配。但是,我无法从我的 PC ping Yocto 板,但可以从该板 ping PC。我还注意到,如果我从 PC 运行 ping 命令,然后从开发板运行相同的命令,则一旦开发板开始执行 ping,来自 PC 的 ping 就会开始工作。
这是/etc/hostapd.conf的内容:
interface=wlan1
driver=nl80211
logger_syslog=-1
logger_syslog_level=0
logger_stdout=-1
logger_stdout_level=3
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=softAP
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
/etc/udhcpd.conf的内容:
start 192.168.3.10
end 192.168.3.100
# The interface that udhcpd will use
interface wlan1 #default: eth0
板子上ip路由的输出:
192.168.3.0/24 dev wlan1 proto kernel scope link src 192.168.3.1
PC上ip路由的输出:
192.168.3.0/24 dev wlx000f005d7551 proto kernel scope link src 192.168.3.10 metric 600
192.168.178.0/24 dev enp14s0 proto kernel scope link src 192.168.178.84 metric 100
答案1
经过一番尝试后,我通过删除线路解决了问题
ifconfig wlan1 hw ether 00:25:ca:07:0d:a6