MT7628 変更 VLAN が有効にならない

mtk公式のopenwrtスイッチを変更する方法

新しく作成したボードでは P0 が WAN ポートとして設定されていますが、ファームウェアをプログラムした後、WAN ポートは IP アドレスを取得できず、
/etc/config/network でスイッチを設定しても無駄です。

【最終的な解決策】

# package/ramips/applications/switch/files/switch.sh の
7620 および 7621 の work を、
状況に応じて WLLLL または LLLLW に変更します。
setup_switch()
{ # config6855Esw LLLLW     config6855Esw WLLLL }


または、
package/ramips/applications/switch/files/switch-7621.sh で変更します。

setup_switch()
{     echo "7621 独立した gmac を lan、LLLLW として使用します"     restore6855Esw     config6855Esw LLLLW }



reset_switch()
{     echo "7621 独立した gmac を lan と wan として使用します"     restore6855Esw }



注:
1) p0 を wan ポートとして設定した場合、スイッチを WLLLL に変更するために kernel_menuconfig を作成する必要はありません。

LLLLW パーティションであっても、前述の方法に従って「config6855Esw WLLLL」を変更すると、wan ポートが正常に動作するようになります。
[ 16.940000] HW-TRAP を 0x17ccd に変更
[ 16.944000] LAN/WAN LLLLW を設定


さらに: /etc/init.t/network start/restart; package/network/config/netifd/files/etc/init.d/networkのときに setup_switch() 関数が呼び出されることがわかります。


init_switch() {     setup_switch() { 0 を返す; }

    /lib/network
    setup_switchを含める
}

start_service() {     init_switch

    procd_open_instance
    procd_set_param コマンド /sbin/netifd
    procd_set_param respawn
    procd_set_param watch network.interface
    [ -e /proc/sys/kernel/core_pattern ] && {         procd_set_param 制限 core="unlimited"         echo '/tmp/%e.%p.%s.% t.core' > /proc/sys/kernel/core_pattern     }     procd_close_instance }




reload_service() {     init_switch     ubus call network reload     /sbin/wifi reload_legacy }



2) 複数の WAN ポートなど、他のスイッチ モードに設定する場合は、ネイティブ SDK のsource\user\rt2880_app\scripts\config_vlan.sh 内の関連関数を参照する必要があります。
 

おすすめ

転載: blog.csdn.net/jhyBOSS/article/details/130014982