web-dev-qa-db-ja.com

Mikrotik-たくさんのtcp再送信パケット

私はIP192.168.10.144のubuntuサーバーを持っていますが、このサーバーにはIP範囲10.0.0.0/24を使用するDockerネットワークがあります。 Dockerで実行されているいくつかのサービスにコンピューターを接続する必要があるため、Mikrotikにルートを追加しました。

#      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
0 ADS  0.0.0.0/0                          192.168.0.1               1
1 A S  10.0.0.0/24                        192.168.10.144            1
2 ADC  192.168.0.0/24     192.168.0.3     ether1-internet           0
3 ADC  192.168.10.0/24    192.168.10.1    ether2-proliant           0

ただし、コンピューターとDockerサービス間の接続は非常に遅いです。私はwiresharkを使用して何が起こっているかを確認し、いくつかのtcp-restransmissionメッセージを見つけました。

wireshark

Natルールで問題を解決できるとは思いますが、次のルールを使用すると、コンピューターとDockerの間で通信が行われませんでした。

0    ;;; default configuration
  chain=srcnat action=masquerade out-interface=ether1-internet log=no 
  log-prefix="" 

1    chain=dstnat action=dst-nat to-addresses=192.168.10.144 to-ports=80 
  protocol=tcp dst-port=8000 log=no log-prefix="" 

2 X  chain=dstnat action=dst-nat to-addresses=192.168.10.144 protocol=tcp 
  dst-address=10.0.0.0/24 log=no log-prefix="" 

3 X  chain=srcnat action=src-nat to-addresses=10.0.0.0/24 protocol=tcp 
  src-address=192.168.10.144 log=no log-prefix="" 

私は何が間違っているのですか?

1
brevleq

Natルールを削除し、マスカレードルールを追加しただけです。

[admin@MikroTik] /ip firewall nat> print 
Flags: X - disabled, I - invalid, D - dynamic 
 0    ;;; default configuration chain=srcnat action=masquerade out-interface=ether1-internet log=no log-prefix="" 
 1    chain=dstnat action=dst-nat to-addresses=192.168.10.144 to-ports=80 protocol=tcp dst-port=8000 log=no log-prefix="" 
 2    chain=srcnat action=masquerade dst-address=10.0.0.0/24 log=no log-prefix="" 

これで、すべてが期待どおりに機能しています。

0
brevleq

お使いのPCのIPアドレスは192.168.10.53ですか?デフォルトゲートウェイ(192.168.10.1)を介してホスト10.0.0.77にトラフィックを送信します。ルーターからICMPリダイレクトパケットが返送されます。詳細については、こちらをご覧ください: https://www.Cisco.com/c/en/us/support/docs/ip/routing-information-protocol-rip/13714-43.html

ここで説明されている問題に似たものが発生する可能性があります: https://forum.mikrotik.com/viewtopic.php?t=139465

考えられる解決策:PCに静的ルートを設定します:10.0.0.0/24 via 192.168.10.144

0
Artur Wosztyl