谷动谷力

 找回密码
 立即注册
查看: 2926|回复: 1
打印 上一主题 下一主题
收起左侧

OpenWrt 源码编译修改默认IP地址和网关DNS地址

[复制链接]
跳转到指定楼层
楼主
发表于 2022-7-28 18:34:43 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 sunsili 于 2023-7-28 16:09 编辑

OpenWrt 源码编译修改默认IP地址和网关DNS地址                                                                                                                                                        

文章前言

在OpenWrt源码编译后默认的登录IP地址为192.168.1.1,往往这个IP地址跟我们现在所有的路由器IP冲突,对进入管理页面和终端造成麻烦,所以在编译之前修改掉默认的IP地址。
Lean大神的源码默认会修改IP在另一个段,为192.168.5.1,我们可以自定义修改成1.1同一个网段但是不是同一个IP,这样就解决了冲突的问题,而且也还可以便面局域网内其他设备IP地址段的问题。

上手操作

源码中关于网络的配置在config_generate这个文件里,打开终端进入源码目录用VIM或其他编辑器编辑文件:

修改默认IP
  • cd openwrt
  • vim package/base-files/files/bin/config_generate


大概在99行很明显这就是我们的默认路由器的IP地址,输入I把最后面的数字1修改成254
这样编译后默认的管理IP就是:192.168.1.254


添加DNS和网关IP

其实这一步你不需要做,因为你修改了默认IP,完全可以进入LUCI管理界面进行修改,但是就是懒得做这一步的可以在大概108行的位置下面插入:
  • set network.$1.gateway='192.168.1.1'
  • set network.$1.dns='127.0.0.1 223.5.5.5 8.8.8.8'


第一个是网关的地址,第二个是DNS地址,可以设置多个DNS地址中间用空格隔开。
最后变成如下图:

达到目的了保存退出,删除临时文件夹,终端输入:
  • rm -rf tmp


如果之前编译过的可以多线程进行编译:
  • make V=s -j$(nproc)


进行快速编译即可。

写在最后

如果你是自己用的固件,二期作为主路由进行拨号,你完全还可以添加默认的PPPoE自动拨号拨号,刷入后开机自动拨号,但是这完全没有必要修改源码来结局额,我只要登录到路由器管理界面后手动配置即可,这样稳当点!
+14

最近谁赞过

回复

使用道具 举报

沙发
发表于 2022-7-28 18:41:55 | 只看该作者
1、15版本以前的
更改:/package/base-files/files/lib/functions/uci-default.sh

ucidef_set_interface_lan() {
        local ifname=$1
        uci batch <<EOF
set network.lan='interface'
set network.lan.ifname='$ifname'
set network.lan.type='bridge'
#更改lan口获取ip的方式为static
set network.lan.proto='static'
#更改lan口ip为10.1
set network.lan.ipaddr='192.168.8.1'
set network.lan.netmask='255.255.255.0'
set network.lan.ip6addr='fd04:bd3:80e8:1::1/64'
EOF
}

2、 15.05版本之后的
可能还需要更改:/package/base-files/files/bin/config_generate

[ -n "$vlan" ] && ifname=${ifname}.${vlan}
    uci -q batch <<EOF
delete network.$1
set network.$1='interface'
set network.$1.ifname='$ifname'
set network.$1.force_link=1
set network.$1.proto='none'
set network.$1.macaddr='$macaddr'
EOF
    case $1 in
    lan) uci -q batch <<EOF
set network.$1.type='bridge'
set network.$1.proto='static'
set network.$1.ipaddr='192.168.8.1'
set network.$1.netmask='255.255.255.0'
set network.$1.ip6assign='60'
EOF

+10
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-11-18 14:01 , Processed in 0.237971 second(s), 46 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

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