AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 427828
Accepted
UXELDUXEL
UXELDUXEL
Asked: 2018-03-03 17:37:03 +0800 CST2018-03-03 17:37:03 +0800 CST 2018-03-03 17:37:03 +0800 CST

iptables NAT / 内核 IP 转发限制为 ~10Mbit

  • 772

我目前正在设置我的 iot 路由器,但遇到了一些有关连接速度的问题。路由器本身就是一个级联路由器。我的网速是 100Mbit,我通过速度测试直接连接到主路由器来验证。但是,如果我通过级联路由器连接它,我只能获得 10-18Mbit 之间的连接速度。我认为内核 IP 转发或 Iptables NAT 可能配置错误。

操作系统是 Debian 8 Kernel Version 3.4 (Bananian Linux)
路由器本身是 Banana PI BPI R1
Iptables 运行版本 v1.4.21

我为设置网络而运行的相关命令是

iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0.101 -j MASQUERADE

(eth0.101是连接到主路由器的输出接口。)

通过 systemctl 启用 ip 转发
ipv6 完全禁用
,因为路由器的网卡使用内部交换机,我必须使用 vlan 将“lan”与“wan”分开我通过工具 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/转发?我的第一个想法是,我的网卡无法达到更高的速度,尽管它说可以。但是为了确认这一点,我在我的路由器上运行了一个 socks5 代理并禁用了 IP 转发进行测试,当通过这个 socks5 代理运行速度测试时,我能够达到 100Mbit,这让我得出结论,这不是我的网卡瓶颈.

我已经尝试了一些事情,包括增加我的 VLAN 接口的数据包队列的大小,因为它们是零,这没有改变。

我也不认为我的路由器的 CPU 太弱而无法运行它,因为为什么它足够强大以使用通用 socks5 代理而太弱而无法使用 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

任何想法将不胜感激。

networking iptables
  • 1 1 个回答
  • 1023 Views

1 个回答

  • Voted
  1. Best Answer
    Rui F Ribeiro
    2018-03-04T03:17:44+08:002018-03-04T03:17:44+08:00

    Banana R1/Lamobo R1 虽然是一款有趣的硬件,但缺点太多。

    首先,“交换机”内部接口带宽是共享的。所有共享 5 个端口的理论速率最高为 1GBps;人们能够从每个接口获得的官方速度约为 300Mbit。

    其次,它必须在设备树(覆盖?)中由正在使用的操作系统进行设置 - 无法记住具体细节。否则会很慢。

    Bananian Linux 是一个丑陋的 hack,不能很好地工作,它会给你带来问题,并且可能无法很好地设置你的千兆交换机。此外,自 2017 年第一季度末以来,Bananian 正式被弃用,其安全更新将在几个月后停止出现。

    我将 R1 与 Armbian 一起使用了一段时间;它运作良好。我还从物理上切断了realtek wifi,即使不使用它也只会造成不稳定。

    您可能还会遇到机械硬盘的电源问题;我用的是SSD。

    作为建议,停止使用 Bananian,并尝试 ArmBian。请注意,Armbian 中的开关接口不同,因为它使用更新的内核 4.x。

    最后,不要浪费时间尝试 R1 的 OpenWRT 版本。这是一项拙劣的工作,并且充满了绕过中国大防火墙的技巧。

    现在离开 R1 特定的考虑因素,并转到路由方面,可以在大多数消费级 ISP 路由器中完成的一项优化是设置一个带有桥接的端口并将您的 R1 连接到那里。因此,您的外部接口将获得一个公共 IP 地址,并且您的 NAT 不会再有来自 ISP 的双重 NAT。(我在这里做同样的事情)

    PS 对于来这里的读者。R1/R1S 不值得你花时间和金钱,换一个可以被 OpenWRT 入侵的 AP 路由器。

    • 3

相关问题

  • 关于网络挂载文件的问题

  • IP地址可以以255结尾而不是广播IP地址吗?

  • 如何在 Linux 中让所有流量通过一个接口

  • 无法识别arp命令或ip命令哪个MAC地址输出正确

  • 奇怪的路由器与centos 6一起工作[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve