私は現在IoTルーターを設定していますが、接続速度に問題があります。ルータ自体はカスケードルータです。私のインターネット速度は100Mbitで、速度テストを介してメインルーターに直接接続することで確認されました。ただし、カスケードルーターを介して接続すると、10〜18 Mbitの間の接続速度しか得られません。カーネルIP転送またはIptables NATが誤って設定されている可能性があると思います。
オペレーティングシステムはDebian 8カーネルバージョン3.4(Bananian Linux)
で、ルータ自体は
バージョンv1.4.21を実行しているBanana PI BPI R1 Iptablesです。
ネットワークを設定するために実行した関連コマンドは次のとおりです。
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0.101 -j MASQUERADE
(eth0.101 はメインルータに接続された出力インターフェイスです.)
IP転送はsystemctlを介して有効になります。ルータのネットワークカードが内部スイッチを使用し、VLANを使用して「lan」と「wan」を分離する必要があるため、
ipv6は完全に無効になります。 swconfigツールを使用してこれを行います。
swconfig dev eth0 set reset 1
swconfig dev eth0 set enable_vlan 1
swconfig dev eth0 vlan 101 set ports '3 8t'
swconfig dev eth0 vlan 102 set ports '4 0 1 2 8t'
swconfig dev eth0 set apply 1
なぜこれがNAT /転送だと思いますか?私の最初の考えは、私のネットワークカードがより高い速度に達することができると言っても、より高い速度に到達できないということでした。ただし、これを確認するために、ルーターでソックス5プロキシを実行し、テストのためにIP転送を無効にしました。このソックス5プロキシでスピードテストを実行すると、100Mbitに達することができ、これが私ではないと結論付けることができました。ネットワークによるボトルネックカード。
VLANインターフェイスのパケットキューサイズがゼロだったので、増やすなど、いくつかの操作を試しましたが、何の変更もありませんでした。
また、私のルータのCPUが実行するには弱すぎるとは思わない。なぜ通常のocks5プロキシで作業するのに十分強力ですが、iptablesで作業するには弱すぎるのですか?
これは次の出力ですifconfig
。
eth0 Link encap:Ethernet HWaddr 02:07:0b:02:15:ac
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:370503 errors:0 dropped:0 overruns:0 frame:0
TX packets:365330 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:310436570 (296.0 MiB) TX bytes:308685327 (294.3 MiB)
Interrupt:117 Base address:0xc000
eth0.101 Link encap:Ethernet HWaddr 02:07:0b:02:15:ac
inet addr:192.168.178.2 Bcast:192.168.178.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:209032 errors:0 dropped:0 overruns:0 frame:0
TX packets:171418 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:203959632 (194.5 MiB) TX bytes:102579119 (97.8 MiB)
eth0.102 Link encap:Ethernet HWaddr 02:07:0b:02:15:ac
inet addr:10.8.0.1 Bcast:10.8.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:161471 errors:0 dropped:0 overruns:0 frame:0
TX packets:193912 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:99807884 (95.1 MiB) TX bytes:204644888 (195.1 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
また/etc/network/interfaces
:
auto lo
iface lo inet loopback
auto eth0.101
iface eth0.101 inet static
address 192.168.178.2
network 192.168.178.0
netmask 255.255.255.0
gateway 192.168.178.1
nameserver 8.8.8.8
auto eth0.102
iface eth0.102 inet static
address 10.8.0.1
network 10.8.0.0
netmask 255.255.255.0
どんなアイデアでも大いに感謝します。
答え1
Banana R1 / Lamobo R1は興味深いハードウェアですが、欠点が多すぎます。
まず、「スイッチ」内部インターフェイス帯域幅が共有されます。 5つの共有ポートはすべて理論的に最大1GBpsを処理できます。ここで得られる公式速度はインターフェイスあたり約300Mbitです。
次に、使用しているオペレーティングシステムのデバイスツリー(オーバーレイ?)で設定する必要があります。正確な詳細は覚えていません。それ以外の場合は非常に遅くなります。
Bananian Linuxは正常に動作しない醜いハッキングで、問題を引き起こし、ギガビットスイッチを正しく設定できない可能性があります。また、Banianは2017年第1四半期末から正式に廃止予定のプロジェクトとなり、セキュリティ更新プログラムは数ヶ月後には表示されなくなります。
私はしばらくArmbianでR1を使用してきました。素晴らしい作品。 Realtek Wi-Fiも物理的に壊れて不安定になりました。でも使用しないとき。
機械式ハードドライブに電源の問題がある可能性があります。私はSSDを使用しています。
Bananianの使用を中止し、ArmBianを使用することをお勧めします。 Armbian では最新のカーネル 4.x を使用しているため、スイッチのインターフェイスは異なります。
最後に、OpenWRTのR1バージョンを試すのに時間を無駄にしないでください。中国の万里のファイアウォールを迂回するためのハッキングでいっぱいの誤った作業です。
これでR1の特定の考慮事項を離れてルーティングの側面に進むと、ほとんどのコンシューマークラスのISPルーターで実行できる最適化の1つは、ブリッジポートを設定してR1を接続することです。したがって、外部インターフェイスはパブリックIPアドレスを取得し、NATはもはやISPからデュアルNATを持たなくなります。 (私もここで同じことをしています)
ps。ここに来た読者の皆さん。 R1 / R1Sは、OpenWRTで攻撃される可能性のあるAPルーターを購入するのに時間とお金を費やす価値はありません。