ToB企服应用市场:ToB评测及商务社交产业平台

标题: OpenWrt网络设置详解 [打印本页]

作者: 铁佛    时间: 2024-6-21 13:18
标题: OpenWrt网络设置详解
       OpenWrt是一款强大的路由器利用体系,当然OpenWrt还可以作为其他用途,现在应用最广泛的就是路由器。盼望对广大的客户,在设置网络有帮助。

设置文件

OpenWrt全部设置生存在/etc/config目录,以下为主要的网络设置文件

网络接口

OpenWrt网络接口一般包罗lan口和wan口,但如果是X86等装备,只设置了一张网卡,只会生成lan口信息,在假造机中我们默认只设置一个网卡,方便设置网络,等熟悉基本网络设置后再尝试将OpenWrt打造成一台路由器。
查看网卡设置和IP信息

在前面的教程中,我们将网卡IP设置成了动态获取IP,那我们查看网卡和IP信息有哪几种方式呢

     其中<interface_name>是网络接口的名称。比方,获取lan接口的详细信息:
      ubus call network.interface.lan status 
{
 "up": true,
 "pending": false,
 "available": true,
 "autostart": true,
 "dynamic": false,
 "uptime": 14506,
 "l3_device": "br-lan",
 "proto": "dhcp",
 "device": "br-lan",
 "metric": 0,
 "dns_metric": 0,
 "delegation": true,
 "ipv4-address": [
  {
   "address": "192.168.10.161",
   "mask": 24
  }
 ],
 "ipv6-address": [
  
 ],
 "ipv6-prefix": [
  
 ],
 "ipv6-prefix-assignment": [
  {
   "address": "fdf1:f344:c0d9::",
   "mask": 60,
   "local-address": {
    "address": "fdf1:f344:c0d9::1",
    "mask": 60
   }
  }
 ],
 "route": [
  {
   "target": "0.0.0.0",
   "mask": 0,
   "nexthop": "192.168.10.1",
   "source": "192.168.10.161/32"
  }
 ],
 "dns-server": [
  "192.168.10.1"
 ],
 "dns-search": [
 ],
 "neighbors": [
  
 ],
 "inactive": {
  "ipv4-address": [
   
  ],
  "ipv6-address": [
   
  ],
  "route": [
   
  ],
  "dns-server": [
   
  ],
  "dns-search": [
   
  ],
  "neighbors": [
   
  ]
 },
 "data": {
  "dhcpserver": "192.168.10.1",
  "hostname": "OpenWrt",
  "leasetime": 1800
 }
}

   config interface 'loopback'
 option device 'lo'
 option proto 'static'
 option ipaddr '127.0.0.1'
 option netmask '255.0.0.0'

config globals 'globals'
 option ula_prefix 'fdf1:f344:c0d9::/48'

config device
 option name 'br-lan'
 option type 'bridge'
 list ports 'eth0'

config interface 'lan'
 option device 'br-lan'
 option ipaddr '192.168.1.1'
 option netmask '255.255.255.0'
 option ip6assign '60'
 option proto 'dhcp' 
uci设置查看命令
uci show network
root@OpenWrt:~# uci show network
network.loopback=interface
network.loopback.device='lo'
network.loopback.proto='static'
network.loopback.ipaddr='127.0.0.1'
network.loopback.netmask='255.0.0.0'
network.globals=globals
network.globals.ula_prefix='fdf1:f344:c0d9::/48'
network.@device[0]=device
network.@device[0].name='br-lan'
network.@device[0].type='bridge'
network.@device[0].ports='eth0'
network.lan=interface
network.lan.device='br-lan'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
network.lan.proto='dhcp'
root@OpenWrt:~# uci show network.lan
network.lan=interface
network.lan.device='br-lan'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
network.lan.proto='dhcp'


网络设置命令


设置IP设置方式:
    uci set network.lan.proto='static' 
设置LAN口的IP地址:
  uci set network.lan.ipaddr='192.168.10.100'  
设置LAN口的子网掩码:
   uci set network.lan.netmask='255.255.255.0' 
设置LAN口的网关地址:
  uci set network.lan.gateway='192.168.10.1'  
设置DNS服务器地址:
 uci set network.lan.dns='8.8.8.8'
如果有多个DNS服务器,可以用空格隔开多个IP地址,比方:
    uci set network.lan.dns='8.8.8.8 8.8.4.4'  
生存修改后的设置:
     uci commit network  
末了重启网络服务见效
/etc/init.d/network reload
实行完以上步骤后,OpenWrt装备的LAN口将设置为静态IP地址192.168.10.100、子网掩码255.255.255.0、网关192.168.10.1、dns 8.8.8.8
uci set network.lan.proto='static'  
uci set network.lan.ipaddr='192.168.10.100'  
uci set network.lan.netmask='255.255.255.0'  
uci set network.lan.gateway='192.168.10.1'  
uci set network.lan.dns='8.8.8.8'  
uci commit network  
/etc/init.d/network reload  
实行后可以查看uci和设置文件
root@OpenWrt:~# uci set network.lan.proto='static'
root@OpenWrt:~# uci set network.lan.ipaddr='192.168.10.100'
root@OpenWrt:~# uci set network.lan.netmask='255.255.255.0'
root@OpenWrt:~# uci set network.lan.gateway='192.168.10.1'
root@OpenWrt:~# uci set network.lan.dns='8.8.8.8'
root@OpenWrt:~# uci commit network
root@OpenWrt:~# 
root@OpenWrt:~# uci show network.lan
network.lan=interface
network.lan.device='br-lan'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
network.lan.proto='static'
network.lan.ipaddr='192.168.10.100'
network.lan.gateway='192.168.10.1'
network.lan.dns='8.8.8.8'

lan接口修改后的设置
config interface 'lan'
 option device 'br-lan'
 option netmask '255.255.255.0'
 option ip6assign '60'
 option proto 'static'
 option ipaddr '192.168.10.100'
 option gateway '192.168.10.1'
 option dns '8.8.8.8'

root@ZhouWu:/# cat  /etc/config/network
config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'
config globals 'globals'
        option ula_prefix 'fdb8:0392:3c69::/48'
config interface 'lan'
        option device 'lan3'
        option proto 'static'
        option ipaddr '10.10.18.1'
        option netmask '255.255.255.0'
        option gateway '10.10.18.250'
config interface 'wan'
        option device 'lan4'
        option proto 'static'
        option ipaddr '192.168.9.148'
        option netmask '255.255.255.0'
        option gateway '192.168.9.1'
config interface 'wan0'
        option device 'lan1'
        option proto 'static'
        option ipaddr '10.10.10.1'
        option netmask '255.255.255.0'
        option gateway '10.10.10.250'
config interface 'wan1'
        option device 'lan2'
        option proto 'static'
        option ipaddr '192.168.8.1'
        option netmask '255.255.255.0'
        option gateway '192.168.8.250'
上面network设置信息,出自于MTK7981板子,把4个网口都设置成独立IP。
网络重启命令

修改网络设置后,有多种方式让设置见效

Init_Config()
{
        uci set system.@system[0].zonename="Asia/Seoul"
        uci set system.@system[0].cronloglevel=5
        uci set system.@system[0].log_proto=udp
        uci set system.@system[0].conloglevel=8
        uci set system.@system[0].timezone=KST-9
        uci set system.@timeserver[0].enabled=""
        uci set system.@timeserver[0].enable_server=""
        uci commit system
        uci delete wireless.@wifi-iface[0]
        uci commit wireless
        uci delete network.@interface[3]
        uci commit network
        sync
        /etc/init.d/network restart &
}
Init_Config 函数是帮助一位韩国朋友开发的项目,初始化体系设置

dhcp服务器设置

dhcp服务器用于分配ip地址给局域网的客户端,默认lan口的dhcp服务器是开启的,如果lan口假造网卡设置的是桥接模式,那lan口和PC处于同一广播域,PC可能会获取到OpenWrt体系分配的IP。
为了防止出现多DHCP服务器,我们要么将LAN口获取ip的方式改为dhcp,要么将DHCP服务器关闭,这里教各人怎样关闭DHCP服务器。


dhcp服务器忽略lan口:uci set dhcp.lan.ignore=1
生存设置:uci commit dhcp
重启服务:/etc/init.d/dnsmasq restart
wan口设置
uci show network.wan
常用设置
wan口设置和lan口类似,也可以设置static、dhcp、pppoe等方式,我们可以通过uci命令修改,也可以通过vi命令编辑/etc/config/network设置文件修改,设置见效方式和lan口一样。
以下为各种方式的接口设置/etc/config/network

 config interface 'wan'
        option device 'eth1'
        option proto 'dhcp'

 config interface 'wan'
 option device 'eth1'
 option proto 'static'
 option ipaddr '192.168.10.171'
 option netmask '255.255.255.0'
 list dns '192.168.10.1'
 list dns '8.8.8.8'

 config interface 'wan'
 option device 'eth1'
 option proto 'pppoe'
 option username 'test'
 option password '12345678'
 option ipv6 'auto'
假造机路由环境搭建


 

 

       为了方便模仿数据从lan到wan进行转发,我们需要增加一台假造PC,该PC和OpenWrt LAN口在同一个局域网,而OpenWrt wan口和物理PC在同一个局域网(通过桥接或NAT模式均可),如许假造PC上网数据就会经过OpenWrt处理处罚,OpenWrt充当了一个路由器的脚色。
网络拓扑
        将OpenWrt lan接口设置为主机模式绑定为vmnet10(其他未占用的也可以),如许全部vmnet10中的网卡都和OpenWrt lan在同一个局域网。而wan口网卡设置为桥接模式,如许wan口可以获取到路由器分配的ip,并且和PC网卡ip在同一个网段。
网络拓扑图如下:

根据网络拓扑,还需要增加一台客户端,将网卡绑定到vmnet10,如许该客户端可以通过OpenWrt假造机联网,这里建议将OpenWrt体系克隆后修改网卡设置,作为客户端使用,当然你也可以增加一台windows、ubuntu假造机,毗连OpenWrt路由器LAN口使用。
管理OpenWrt
       装备按以上拓扑摆设后各人应该发现一个标题,就是物理PC不能直接访问OpenWrt了,因为PC和OpenWrt wan口在同网段,和OpenWrt lan不在同一网段。
那怎样管理设置OpenWrt体系呢?
这里有两个方案:
关闭wan口防火墙
    打开防火墙设置,找到wan口的设置规则,将REJECT修改为ACCEPT,然后重新加载防火墙规则
vi /etc/config/firewall

/etc/init.d/firewall restart  重启防火墙
       如许就可以通过web访问OpenWrt体系了,注意通过wan口ip访问。也可以通过ssh毗连wan口ip访问背景,注意低版本的OpenWrt需要绑定ssh服务到wan口才能访问,ssh设置文件/etc/config/dropbear,绑定到wan后重启服务即可,重启ssh服务命令/etc/init.d/dropbear restart


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4