树莓派手动指定静态IP和DNS 终极解决大法 (最管用的版本)
Posted 李昊轩的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了树莓派手动指定静态IP和DNS 终极解决大法 (最管用的版本)相关的知识,希望对你有一定的参考价值。
在把玩树莓派的过程中,往往需要手动给它设定一个静态的IP地址,一来可以防范DHCP自动分配的IP来回变动,导致远程SSH时常无法连接;二来还可以提高树莓派的网络连接速度。
对此我在网上查了很多资料,大多数方法都是修改 /etc/network/interfaces 配置文件,增加静态IP的设定。的确对于 Debian 系的 Linux 系统来说,不都是这样修改滴嘛?
不过马上就发现了一个问题,那就是通过修改 interfaces 设置静态IP的方法,并不完美,即便取得了静态IP,DHCP 服务依然会自动为树莓派分配动态 IP 和 DNS 地址,导致路由表默认网关出现冲突,以及手动给定的默认 DNS 不生效的情况。
解决树莓派静态IP和DNS难题的终极方法
其实解决起来特别简单,人家已经在 interfaces 文件的开头注释里告诉我们了要修改静态IP地址,需要修改的是 /etc/dhcpcd.conf 也就是 DHCP 的配置文件。
查看官方文档 man dhcpcd.conf 可知,需要配置 static IP 的话,只需修改以下参数:
vi /etc/dhcpcd.conf
注意: wifi需要将网卡设置为 wlan0
而不是 eth0
\\# 使用 vi 编辑文件,增加下列配置项
\\# 指定接口 eth0
interface eth0
\\# 指定静态IP,/24表示子网掩码为 255.255.255.0
static ip_address=192.168.1.20/24
\\# 路由器/网关IP地址
static routers=192.168.1.1# 手动自定义DNS服务器
static domain_name_servers=114.114.114.114
\\# 修改完成后,按esc键后输入 :wq 保存。重启树莓派就生效了
sudo reboot
另外注意配置时,你的静态IP一定要和你的路由器网段一致,比如:假设你的路由器的IP为 192.168.0.x 网段,则上面的 static ip_address 就要对应的修改为 192.168.0.x/24 。还有一点就是你的手动静态IP要注意不能跟路由器 DHCP 所自动分配的 IP 冲突,否则树莓派就有可能无法正常联网。
可用ipconfig查看路由器地址:
1、在开始菜单搜索框,输入cmd确定后,打开命令对话框
然后输入ipconfig指令,点击Enter键,确定
弹出的信息中,找到默认网关,对应的即是IP地址了
以上是关于树莓派手动指定静态IP和DNS 终极解决大法 (最管用的版本)的主要内容,如果未能解决你的问题,请参考以下文章