文章目录
1.概述2.树莓派和PC在同一个路由器产生的局域网下3.树莓派网线直连PC4.树莓派无线网卡开启AP模式。4.1开启AP模式4.2设置DHCP4.3设置IP包转发5.树莓派由AP模式改为STA模式6.树莓派再次启动AP模式7.参考资料1.概述
PC和树莓派在同一局域网下,可以使用putty、vnc等工具远程控制树莓派,前提是需要知道树莓派IP;广域网可使用teamviewer。
2.树莓派和PC在同一个路由器产生的局域网下
查到树莓派IP的办法:1.登录到路由器的后台,查看树莓派的IP;2.使用Network Scanner扫描局域网内的设备;(树莓派的网卡mac地址一般以字母d开头)。
3.树莓派网线直连PC
进入PC的CMD,输入arp -a
可以看到此时PC连上了一个Wifi,分配得到的IP为192.168.0.113。设置WLAN共享属性:设置>>网络和Internet>>WLAN>>更改适配器选项,右键WLAN>>属性>>共享>>勾选允许其他…连接。
用网线连接PC和树莓派,再次arp -a
,此时可以看到树莓派的IP。
树莓派自动分配到了192.168.137.53的IP,此时可以使用vnc连接该IP。如果PC通过wifi连上外网时,树莓派也可以访问外网。
此过程大概就是把PC的有线网卡配置成了AP模式,相当于路由器。树莓派通过网线连接PC,相当于连上了路由器。PC且设置了Internet共享(IP包转发),如果PC通过Wifi连上了外网,树莓派也可以访问外网。
4.树莓派无线网卡开启AP模式。
树莓派也有双网卡,可以将树莓派的无线网卡配置成AP模式,发射Wifi。PC连上该Wifi,就和树莓派在同一局域网下。
4.1开启AP模式
安装hostapd:sudo apt install hostapd
;sudo systemctl stop hostapd
;
修改热点配置文件:sudo nano /etc/hostapd/hostapd.conf
,在文件中添加以下内容:
interface=wlan0driver=nl80211ssid=RaspberryWifihw_mode=gchannel=7wmm_enabled=0macaddr_acl=0auth_algs=1ignore_broadcast_ssid=0wpa=2wpa_passphrase=wifi密码wpa_key_mgmt=WPA-PSKwpa_pairwise=TKIPrsn_pairwise=CCMP
修改读取配置文件:sudo nano /etc/default/hostapd
,去掉 DAEMON_CONF 的注释,并配置成/etc/hostapd/hostapd.conf
,如图所示。意思就是告诉 hostapd 要从/etc/hostapd/hostapd.conf 读取配置参数。
取消注销:sudo systemctl unmask hostapd
;
开机自启:sudo systemctl enable hostapd
;
启动:sudo systemctl start hostapd
。
4.2设置DHCP
修改dhcpcd配置文件:sudo nano /etc/dhcpcd.conf
,在文件末尾添加:
interface wlan0static ip_address=192.168.4.1/24nohook wpa_supplicant
重启dhcp服务:sudo systemctl restart dhcpcd
;
安装dnsmasq服务:sudo apt install dnsmasq
;sudo systemctl stop dnsmasq
;
修改dnsmasq配置文件:sudo nano /etc/dnsmasq.conf
,把里面的其他内容都注释掉,添加新的配置项:
sudo nano /etc/dnsmasq.confinterface=wlan0dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h
重启dnsmasq服务:sudo systemctl restart dnsmasq
。
4.3设置IP包转发
修改配置文件开启IP包转发:sudo nano /etc/sysctl.conf
,去掉net.ipv4.ip_forward=1
这个配置项的注释;
修改Linux防火墙规则:sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
设置开机自动导入防火墙规则:sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
;
修改文件:sudo nano /etc/rc.local
,把iptables-restore < /etc/iptables.ipv4.nat
加到最后一行 exit 0 的前面;
重启树莓派:sudo reboot
。
5.树莓派由AP模式改为STA模式
关闭hostapd服务:sudo systemctl stop hostapd
;注销hostapd服务:sudo systemctl mask hostapd
;打开sudo nano /etc/dhcpcd.conf
,注释最后面添加的静态IP语句;重启dhcp服务,sudo systemctl restart dhcpcd
。6.树莓派再次启动AP模式
取消注销hostapd服务:sudo systemctl unmask hostapd
;开启hostapd服务:sudo systemctl start hostapd
;打开sudo nano /etc/dhcpcd.conf
,取消注释添加的静态IP语句;重启dhcp服务,sudo systemctl restart dhcpcd
,如果没有发出来,sudo reboot
。7.参考资料
树莓派网线直连PC
树莓派开启AP模式
为linux中使用systemctl对服务的操作