OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5504|回复: 5

给开发板分配静态IP重启后多出一个IP?

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2019-5-14
在线时间
8 小时
发表于 2020-2-19 12:36:43 | 显示全部楼层 |阅读模式
开发板在分配静态IP后,重启还会动态分配一个IP,需要如何禁止系统的动态IP获取?

1.在开发板上面设置静态IPauto eth0
iface eth0 inet static
       address 192.168.1.2
       netmask 255.255.255.0
       gateway 192.168.1.1     

auto eth1                        
iface eth1 inet static  
      address 192.168.1.3   
      netmask 255.255.255.0
      gateway 192.168.1.1   

静态IP分配

静态IP分配


2.添加开机自动重启网络配置


/etc/init.d/networking restart

添加启动

添加启动

3.重启查看IP-------------多出一个IP???????
1.只插入ETH1时的重启后查看IP
3.png

2.只插入ETH2或者ETH1与ETH2都插入时的重启后查看IP
4.png

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

767

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5274
金钱
5274
注册时间
2019-9-25
在线时间
433 小时
发表于 2020-2-20 11:12:18 | 显示全部楼层
本帖最后由 茂茂2019 于 2021-5-8 10:58 编辑

您好!由于yocto的文件系统开机启动时会自动获取ip。如果您再设置静态ip,此时用ip a指令查看就会有两个ip。且这两个ip都是可用的。解决方法如下
1.我们首先找到yocto文件系统(也就是原子出厂文件系统)开机自动获取ip的文件。将/etc/init.d/connman命名为 /etc/init.d/connman2,这样开机就不会自动获取ip。。重命名指令如下
User#  mv /etc/init.d/connman /etc/init.d/connman2
2.我们直接设置开发板的ip。重命名/etc/init.d/connman后,此设置静态ip的方法已经不生效。所以我们直接设置开发板的ip
User#  ifconfig eth0 192.168.1.52 netmask 255.255.255.0   //直接设置开发板的ip及子掩码
User#  route add default gw 192.168.1.1 //添加默认网关,根据个人的网关设置,一般的路由器网关为192.168.1.1
此时输入ping网关指令ping 192.168.1.1。发现是可以ping通了,但是ping外网百度还不行。
3.我们需要设定nameserver关键字才可以找到DNS服务器,这样才能解释百度ip的真实地址。
User#  vi /etc/resolv.conf //在这个文件里添加nameserver关键字
/etc/resolv.conf 这个空文本里添加 nameserver 114.114.114.114 然后保存退出,再去ping百度就可以了。
User#  ping www.baidu.com //ping 百度,有数据回复。表明正常了
4.如果想开机自动设置您的ip。请在/etc/rc.local下添自启动脚本的内容即可!请参考【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.2.pdf第39.4.2小节,设置开机自启动设置
PATH=/sbin:/bin:/usr/sbin:/usr/bin
ifconfig eth0 192.168.1.52 netmask 255.255.255.0
route add default gw 192.168.1.1
echo "nameserver 114.114.114.114" > /etc/resolv.conf



下面是本人实际操作的步骤,感谢对正点原子的支持,谢谢!
实际操作图.png







想思考的时候,有时还可以用屁股,QQ 1252699831
回复 支持 3 反对 0

使用道具 举报

2

主题

712

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2178
金钱
2178
注册时间
2018-8-27
在线时间
258 小时
发表于 2020-2-19 14:27:28 | 显示全部楼层
你单独测试其中一个网口试试,例如在interfaces配置文件中去掉其中一个网口的配置信息
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2019-5-14
在线时间
8 小时
 楼主| 发表于 2020-2-20 07:51:34 | 显示全部楼层
xiaotaotao 发表于 2020-2-19 14:27
你单独测试其中一个网口试试,例如在interfaces配置文件中去掉其中一个网口的配置信息

这个是可能与操作系统的动态IP与单独设置没有关系。单独接哪一个口就会在对应的口多出一个IP,eth0优先
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2019-5-14
在线时间
8 小时
 楼主| 发表于 2020-2-22 19:57:32 | 显示全部楼层
茂茂2019 发表于 2020-2-20 11:12
您好!由于yocto的文件系统开机启动时会自动获取ip。如果您再设置静态ip,此时用ip a指令查看就会有两个ip ...

很详细,非常实用,谢谢了
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2020-9-23
在线时间
4 小时
发表于 2020-10-4 23:17:00 | 显示全部楼层
为什么dns还是设置不了呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 18:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表