我的板子是在脚本里用ifconfig在启动的时候配置的固定ip,如果想改ip只能改这个脚本,这样板子多了就麻烦了,请问如何设置成动态分配呢?
23 个解决方案
#1
1、内核网络配置里要支持dhcp
2、编译的文件系统要有dhcp命令
3、板子所在的局域网里要有dhcp服务器
2、编译的文件系统要有dhcp命令
3、板子所在的局域网里要有dhcp服务器
#2
你可以找到网卡的配置文件
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
#3
编一个DHCPCD程序放到板子里,开机的时候执行起来
只要所连接的网络上有DHCP服务器,就能自动配了
只要所连接的网络上有DHCP服务器,就能自动配了
#4
如何检查内核和文件系统是不是支持dhcp?、、/bin,/sbin目录里也没有dhcp相关的命令
#5
init.d里没有那个文件,整个文件系统里都没有那个文件
#6
以太口抓包看看是否有DHCP请求命令发送出去
#7
但是/sbin里倒是有udhcpc命令,请问我如何使用这个命令?
#8
你能看到网卡设备吗,你可以写个脚本
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
#9
你能看到网卡设备吗,你可以写个脚本
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
#route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
我把上面配置ip的脚本注释掉,换成那个不行;全部脚本如下
modprobe libphy;
modprobe hiether rv_strat=2 rv_qcnt=512 hwq_recv=32 hwq_xmit=32 flimit=256;
ifconfig eth0 hw ether 00:10:35:12:35:12;
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
#route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
#10
你原来那个脚本是静态的ip,能正常工作吗?
#11
你原来那个脚本是静态的ip,能正常工作吗?
#12
那个可以就没问题,你等他静态起来,在直接敲udhcpc eth0 命令应该就能自动拿到ip地址,你在吧这个命令到脚本里去替换静态那一部分。
#13
那个可以就没问题,你等他静态起来,在直接敲udhcpc eth0 命令应该就能自动拿到ip地址,你在吧这个命令到脚本里去替换静态那一部分。
1,静态配置好了还怎么自动分配呢?
2,这样和直接替换不是一样吗?我的希望是启动的时候自动分配啊
#14
1. 我只是想证明你那的udhcpc 能否在你那的环境正常工作。
2. 你只有第一步正常工作了,你在考虑第二步。
2. 你只有第一步正常工作了,你在考虑第二步。
#15
1. 我只是想证明你那的udhcpc 能否在你那的环境正常工作。
2. 你只有第一步正常工作了,你在考虑第二步。
/mnt/SD/tde $ ifconfig eth0 up
/mnt/SD/tde $ udhcpc eth0
udhcpc (v0.9.9-pre) started
Jan 1 01:25:13 udhcpc[305]: udhcpc (v0.9.9-pre) started
m
Jan 1 01:25:13 udhcpc[310]: [truncated] m
m
Jan 1 01:25:13 udhcpc[305]: [truncated] m
/mnt/SD/tde $ ifconfig
eth0 Link encap:Ethernet HWaddr 00:10:35:12:35:12
inet addr:192.168.1.15 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3685 errors:0 dropped:0 overruns:0 frame:0
TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:451237 (440.6 KiB) TX bytes:3042 (2.9 KiB)
Interrupt:15
再次查看,还是那个静态ip
#16
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
#17
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
#18
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
我在脚本里把设置静态ip的注释掉,换成udhcpc,不行:
modprobe mmz mmz=ddr,0,0xE2000000,128M;
modprobe libphy;
modprobe hiether rv_strat=2 rv_qcnt=512 hwq_recv=32 hwq_xmit=32 flimit=256;
ifconfig eth0 hw ether 00:10:35:12:35:12;
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
出现如下提示:
udhcpc (v0.9.9-pre) started
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
网上有人说这是中断错误,请问了解吗
#19
另外补充一下,如果设置了静态ip再调用udhcpc会有什么结果?调用udhcpc正确的配置是不是只配置
#20
学习了,继续飘过。。
#21
我需要重新做文件系统吗?
#22
udhcpc (v0.9.9-pre) started
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
以上提示表示程序运行出错吗?
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
以上提示表示程序运行出错吗?
#23
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
网上搜了一点资料,有人说可能是内核编译的时候相关选项没选上,我打开内核编译选项查看了下
[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] Network packet filtering framework (Netfilter) --->
这几个我的内核好像 [*] IP: kernel level autoconfiguration该项未选,另外
[*] IP: DHCP support此项我怎么未找到在哪儿呢,了解吗?
#1
1、内核网络配置里要支持dhcp
2、编译的文件系统要有dhcp命令
3、板子所在的局域网里要有dhcp服务器
2、编译的文件系统要有dhcp命令
3、板子所在的局域网里要有dhcp服务器
#2
你可以找到网卡的配置文件
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
#3
编一个DHCPCD程序放到板子里,开机的时候执行起来
只要所连接的网络上有DHCP服务器,就能自动配了
只要所连接的网络上有DHCP服务器,就能自动配了
#4
1、内核网络配置里要支持dhcp
2、编译的文件系统要有dhcp命令3、板子所在的局域网里要有dhcp服务器
#5
你可以找到网卡的配置文件
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
#6
以太口抓包看看是否有DHCP请求命令发送出去
#7
init.d里没有那个文件,整个文件系统里都没有那个文件
你可以找到网卡的配置文件
比如/etc/init.d/ifconfig-eth0
修改脚本内容,使用udhcpc 来自动获取
#8
你能看到网卡设备吗,你可以写个脚本
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
#9
你能看到网卡设备吗,你可以写个脚本
里面这样
ifconfig nicx up
udhcpc nicx
nicx是你的网卡名。
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
#route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
我把上面配置ip的脚本注释掉,换成那个不行;全部脚本如下
modprobe libphy;
modprobe hiether rv_strat=2 rv_qcnt=512 hwq_recv=32 hwq_xmit=32 flimit=256;
ifconfig eth0 hw ether 00:10:35:12:35:12;
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
#route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
#10
你原来那个脚本是静态的ip,能正常工作吗?
#11
你原来那个脚本是静态的ip,能正常工作吗?
#12
那个可以就没问题,你等他静态起来,在直接敲udhcpc eth0 命令应该就能自动拿到ip地址,你在吧这个命令到脚本里去替换静态那一部分。
#13
那个可以就没问题,你等他静态起来,在直接敲udhcpc eth0 命令应该就能自动拿到ip地址,你在吧这个命令到脚本里去替换静态那一部分。
1,静态配置好了还怎么自动分配呢?
2,这样和直接替换不是一样吗?我的希望是启动的时候自动分配啊
#14
1. 我只是想证明你那的udhcpc 能否在你那的环境正常工作。
2. 你只有第一步正常工作了,你在考虑第二步。
2. 你只有第一步正常工作了,你在考虑第二步。
#15
1. 我只是想证明你那的udhcpc 能否在你那的环境正常工作。
2. 你只有第一步正常工作了,你在考虑第二步。
/mnt/SD/tde $ ifconfig eth0 up
/mnt/SD/tde $ udhcpc eth0
udhcpc (v0.9.9-pre) started
Jan 1 01:25:13 udhcpc[305]: udhcpc (v0.9.9-pre) started
m
Jan 1 01:25:13 udhcpc[310]: [truncated] m
m
Jan 1 01:25:13 udhcpc[305]: [truncated] m
/mnt/SD/tde $ ifconfig
eth0 Link encap:Ethernet HWaddr 00:10:35:12:35:12
inet addr:192.168.1.15 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3685 errors:0 dropped:0 overruns:0 frame:0
TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:451237 (440.6 KiB) TX bytes:3042 (2.9 KiB)
Interrupt:15
再次查看,还是那个静态ip
#16
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
#17
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
#18
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
我在脚本里把设置静态ip的注释掉,换成udhcpc,不行:
modprobe mmz mmz=ddr,0,0xE2000000,128M;
modprobe libphy;
modprobe hiether rv_strat=2 rv_qcnt=512 hwq_recv=32 hwq_xmit=32 flimit=256;
ifconfig eth0 hw ether 00:10:35:12:35:12;
#ifconfig eth0 192.168.1.15 netmask 255.255.255.0;
route add default gw 192.168.1.1;
ifconfig eth0 up;
udhcpc eth0;
出现如下提示:
udhcpc (v0.9.9-pre) started
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
网上有人说这是中断错误,请问了解吗
#19
另外补充一下,如果设置了静态ip再调用udhcpc会有什么结果?调用udhcpc正确的配置是不是只配置
#20
学习了,继续飘过。。
#21
我需要重新做文件系统吗?
#22
udhcpc (v0.9.9-pre) started
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
以上提示表示程序运行出错吗?
Jan 1 00:15:06 udhcpc[320]: udhcpc (v0.9.9-pre) started
m
Jan 1 00:15:06 udhcpc[325]: [truncated] m
m
Jan 1 00:15:06 udhcpc[320]: [truncated] m
以上提示表示程序运行出错吗?
#23
那你查查为什么不能dhcp工作啊,你电脑能够dhcp工作吗,你的板子udhcpc为什么不能工作啊,这些查完了。你9楼的脚本就能正常工作了。
网上搜了一点资料,有人说可能是内核编译的时候相关选项没选上,我打开内核编译选项查看了下
[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] Network packet filtering framework (Netfilter) --->
这几个我的内核好像 [*] IP: kernel level autoconfiguration该项未选,另外
[*] IP: DHCP support此项我怎么未找到在哪儿呢,了解吗?