openwrt之源碼編譯以及網絡配置

參考鏈接

OpenWrt入門

OpenWrt開發者指南

智能路由器開發指南核心筆記

openwrt源碼編譯

openwrt中vlan配置

  • vlan作用

    劃分不同的網絡,每個網絡之間都不互通;有幾個硬件端口,就可以劃分幾個不同
    的網絡,每個網絡即可以做 wan,也可以做 lan,一般是一個端口做 wan 口,其他端口做 lan 口

  • 配置文件

    /etc/config/network,以widora_neo爲例,neo上的網口對應Port0

    config switch                                                                   
            option name 'switch0'                                                   
            option reset '1'                                                        
            option enable_vlan '1'#開啓vlan                                                  
                                                                                    
    config switch_vlan#vlan1的設置                                                              
            option device 'switch0'                                                 
            option vlan '1'                                                         
            option ports '1 2 3 4 6t'#1 2 3 4表示物理端口1 2 3 4,6t表示cpu默認端口                                                                               
    config switch_vlan#vlan2的設置                                                             
            option device 'switch0'                                                 
            option vlan '2'                                                         
            option ports '0 6t'#0表示物理端口0,6t表示cpu默認端口                                 
    

    說明:默認配置兩個vlan即vlan1和valn2(eth0是實際的物理接口),按照以上配置重啓網絡後,會自動生成2個設備接口eth0.1(vlan1)、eth0.2(vlan2),這樣就可以配置這兩個 valn 做爲 lan 口或者 wan 口

  • 相關配置

    /etc/config/network,以widora_neo爲例

    config interface 'loopback'
            option ifname 'lo'
            option proto 'static'
            option ipaddr '127.0.0.1'
            option netmask '255.0.0.0'
    
    config globals 'globals'
            option ula_prefix 'fd8c:74be:671a::/48'
            
    config interface 'lan'                                                          
            option ifname 'eth0.1'#將vlan1設置爲lan,則1 2 3 4端口爲lan口
            option force_link '1'                                                   
            option macaddr '0c:ef:af:d0:46:d3'                                      
            option type 'bridge'                                                    
            option proto 'static'                                                   
            option ipaddr '192.168.8.1'                                             
            option netmask '255.255.255.0'                                          
            option ip6assign '60'#ipv6的前綴長度
            
    config interface 'wan'                                                          
            option ifname 'eth0.2'#將vlan2設置爲wan,則0端口爲wan口                               
            option force_link '1'                                                   
            option macaddr '0c:ef:af:d0:46:d2'                                      
            option proto 'dhcp' 
            
    config interface 'wan6'#ipv6相關配置
            option ifname 'eth0.2'
            option proto 'dhcpv6'
    

    說明:通過以上配置即可將widora通過網線連接到上級路由上網了

openwrt中wireless配置

  • 無線設置包含內容

    一個典型的無線設置文件至少應該包含兩個方面的內容,即至少一個無線設備和至少一個與之相關的無線接口配置

    • 無線設備:指的是一般無線電通訊相關的參數,例如設備硬件(網卡芯片驅動程序類型),信道,頻率,發射功率等
    • 無線接口:指的是無線設備的工作模式,essid,無線加密方式等
    • 無線設備和無線接口具有關聯性,首先是設置好一個無線設備的參數,然後再設置與這個無線設備相關的無線接口參數,從而構造出一個可以有效工作的無線局域網環境
  • 配置文件

    /etc/config/wireless,以widora_neo爲例

    config wifi-device radio0#wifi-device配置項,radio0爲無線網卡的內置標識符
            option type     ralink#ralink爲芯片或驅動程序的類型
            option variant  mt7628
            option country  CN
            option hwmode   11bgn
            option htmode   HT40
            option channel  auto#無線頻道
            option disabled 0
    
    #wifi網絡配置,至少有一個wifi-iface部分
    config wifi-iface ap#ap模式
            option device   radio0
            option mode     ap#ap/sta
            option network  lan#wifi連接到lan口
            option ifname   ra0
            option ssid     Widora-46D2#無線ssid
            option encryption none#wifi加密方式wep psk psk2等 
            option hidden    0#ssid不隱藏
    
    config wifi-iface sta#客戶端模式
            option device   radio0
            option disabled 1
            option mode     sta
            option network  wwan
            option ifname   apcli0
            option ssid     UplinkAp
            option key      SecretKey
    
      apcli0說明:The wireless apcli interface is treated as WAN port, and the wireless ap interface and the ethernet ports are LAN ports;br-lan是虛擬設備,用於LAN口設備橋接
    
  • 重新生成配置

    rm -f /etc/config/wireless; wifi detect > /etc/config/wireless
    wifi down
    wifi up
    /etc/init.d/network restart
    

openwrt中Client STA模式配置

  • root@OpenWrt:/# cat /etc/config/network
config interface 'loopback'
	option ifname 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'
    
config interface 'lan'
	option force_link '1'
	option ifname 'eth0'
	option type 'bridge'
	option proto 'static'
	option ipaddr '192.168.2.1' #要保證AP模式的IP與STA連接的網關在不同網段
	option netmask '255.255.255.0'

config interface 'wwan' #增加一個wirless wan的接口,作爲STA
	option ifname 'apcli0'
	option force_link '1'
	option proto 'dhcp' #啓動dhcp client,用於STA從對端AP獲得IP
  • root@OpenWrt:/# cat /etc/config/wireless
config wifi-device 'radio0'
	option type 'mac80211'
	option channel '13'
	option country 'CN'
	option hwmode '11g'
	option path 'platform/10300000.wmac'
	option htmode 'HT20'
	option legacy_rates '1'

config wifi-iface 'sta'
	option network 'wwan' #與/etc/config/network新定義的interface相同
	option ifname 'apcli0' #注意要加上這個,其他連接上級路由的參數的配置可以通過web設置
	option ssid 'Baymax'
	option encryption 'psk2'
	option device 'radio0'
	option mode 'sta'#STA模式
	option bssid 'EC:17:2F:A7:CC:CB'
	option key 'root123456789'#對端AP的密碼

config wifi-iface 'ap'
	option ssid 'Switch'
	option encryption 'psk2'
	option device 'radio0'
	option mode 'ap'
	option network 'lan' #將ap連接到lan lan設置爲bridge 即可將wwan通過lan橋連接到ap
	option key 'root123456789'
  • root@OpenWrt:/# cat /etc/config/dhcp
config dnsmasq
	option domainneeded '1'
	option boguspriv '1'
	option filterwin2k '0'
	option localise_queries '1'
	option rebind_protection '1'
	option rebind_localhost '1'
	option local '/lan/'
	option domain 'lan'
	option expandhosts '1'
	option nonegcache '0'
	option authoritative '1'
	option readethers '1'
	option leasefile '/tmp/dhcp.leases'
	option resolvfile '/tmp/resolv.conf.auto'
	option nonwildcard '1'
	option localservice '1'

config dhcp 'lan'
	option interface 'lan'
	option start '100'
	option limit '150'
	option leasetime '12h'
	option dhcpv6 'server'
	option ra 'server'
	option ra_management '1'

config dhcp 'wan'
	option interface 'wan'
	option ignore '1'

config odhcpd 'odhcpd'
	option maindhcp '0'
	option leasefile '/tmp/hosts/odhcpd'
	option leasetrigger '/usr/sbin/odhcpd-update'
	option loglevel '4'

其他

  • 使用opkg在外置u盤中安裝軟件

    opkg update
    mkdir /tmp/mounts/packages                                                                             
    echo dest usb /tmp/mounts/packages/ >> /etc/opkg.conf 
    opkg --dest usb install gcc 
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章