問題タブ [iproute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
61 参照

go - netlink の「dev」(デバイス) パラメータに対応するフィールドはどれですか?

netlinkパッケージを使用して新しいルートを追加しようとしています。私が必要とする同等のものはですip route add $P1_NET dev $IF1 src $IP1 table $T1dev問題は、どのフィールドがパラメーターに対応するのかわからないことです。どこかにマッピングがありますか、またはその名前 (「dev」) の代わりにインターフェイス インデックスを使用できますか?

0 投票する
1 に答える
13435 参照

linux - MPLS 設定用の iproute2 コマンド

Linux カーネル 4.1 で iproute2 を使用して静的ラベル スイッチ MPLS ルートを管理する方法を理解しようとしています。

MPLS の iproute2 サポートが現在不完全である可能性があることは承知しています [2]。

iproute2-4.1.1 が現在何ができるかについて、誰かが光を当てることができますか?

これは私がこれまでに見つけたものです:

Documentation/networking/mpls-sysctl.txt

/proc/sys/net/mpls/platform_labels /proc/sys/net/mpls/conf//input

mpls モジュールのロード

sysctl サポートを探す

mpls サポートを有効にする

押す???(prefix-to-push アクションを追加する方法は?)

スワップ???(ラベル交換アクションを追加するには?)

ポップ???(ラベルポップアクションを追加するには?)

???

見せる???(ラベルスイッチされたルートを表示する方法は?)

???

誰かが私を助けることができます。前もって感謝します。

0 投票する
0 に答える
581 参照

linux-kernel - カーネル内の FTN、ILM、および NHLFE

最新のカーネル 4.1 は MPLS データパスをサポートしています。IpRoute2 は、カーネルに mpls ルートを追加するコマンドも追加しています。

FTN(Fec to NHLFE)、ILM(Incoming Label Map)、NHLFE(Next hop label forwarding entry)を作成するiproutesコマンドとは?

上記の表を表示するコマンドは何ですか?

前もって感謝します。

0 投票する
4 に答える
48598 参照

linux - bash を使用して Linux でサブネット マスクを取得する

そのスクリプトでマシンの IP アドレスを取得するために bash を使用しています。

そして今、私はこのタイプのサブネットマスクを取得しようとしています:

しかし、どうすればそれができるのかわかりません。

0 投票する
1 に答える
2332 参照

networking - OpenStack インスタンスのポート転送

良い一日、

今日、ベアメタル インスタンスのプライベート IP から、インストール中に DevStack に最初に指定された IP にすべての着信および発信トラフィックをリダイレクトしようとしています。

OpenStack ベアメタル クラウドのセットアップ

どうやってこの状況になったの?ベアメタル インスタンスをデプロイできる OpenStack 環境で作業しています (フローティング IP:XXX.YYY.88.171、プライベート IP: 10.140.82.189 [eth0 上])。このインスタンスをスピンするために使用されるイメージは、DevStack /Master がインストールされた Ubuntu 14.04 です。DevStack がインストールされたこのイメージのスナップショットは、ローカル IP が 10.140.82.125 [on eth0] の BareMetal で最初に作成されました。したがって、このスピンアップ インスタンスをこのイメージで使用するたびに、Baremetal OpenStack 環境は、すべての DevStack のエンドポイントに含まれる IP (10.140.82.125) とは異なるプライベート IP (この場合は 10.140.82.189) を割り当てます。

ご想像のとおり、これは私たちに多くの問題をもたらします。

私が考えることができるこの問題を解決するための2つの最良のアプローチは次のとおりです。

  1. すべての DevStack エンドポイントを 10.140.82.125 から 10.140.82.189 に変更します (このルートをたどる場合、各更新で考慮すべき多くの問題があります)

  2. 各エンドポイントの 10.140.82.189 から 10.140.82.125 へのすべてのトラフィックを転送します。

私の進捗状況:

最初に、Horizo​​n ダッシュボードにアクセスすることさえできませんでした (ブラウザに入力すると表示されましたが)。

XXX.YYY.88.171 --> 10.140.82.189:8800 --> 10.140.82.125:8800

何らかの理由で、インスタンスの Horizo​​n ダッシュボードが表示されます。ユーザー名とパスワードを入力すると、次のように返されます

keystone エンドポイントへの接続を確立できません。

リクエストした場合、10.140.82.189 に ssh するターミナルで:

そのため、10.140.82.189 は API 呼び出しでその IP を運び、10.140.82.125:5000 でトークンのキーストーンを要求しているようです。IP の不一致が原因で問題が発生し、ログインできません。

次のようにして、小さなポート転送を実行しました。

これで、mi アカウントにログインして、ターミナルでエンドポイントを取得できるようになりました。残念ながら、Horizo​​n 内では nova ( http://10.140.82.125:8774 ) やその他のサービスから情報は取得されません。DevStack 環境でインスタンスをスピンアップしようとすると、次のようになります。

エンドポイントのリスト: コメントに表示

あちこちでエラーが発生し続けます。例として (devstack で screen を使用):

一目でレジストリ:

Neutron-svc (q-svc)

q-agt:

そして、私は続けることができました。前進するための推奨事項は何ですか?

0 投票する
0 に答える
658 参照

linux - ポリシー ルーティングを使用した iptables netfilter パケット フロー

ルーティング/iptables パイプラインでのイベントの順序について質問があります。最初に私の設定を説明します。質問はこの記事の最後にあります。

Linux 4.4 でポリシー ルーティングと iptables を使用しています。

2 つのインターフェイスがあります: wan0 (ISP 向け) と vpn-crypto (vpn プロバイダー向けの tun デバイス)

一部のトラフィックを選択的に vpn にルーティングし、それ以外はすべて wan0 にルーティングしたい

ポリシー ルーティングを次のように実装します。

  • mangle の OUTPUT テーブルで、パターンに一致する NEW トラフィックにマーク 0xC を設定しました。テスト目的で、特定の IP アドレス (37.9.239.33) に向けられたトラフィックをマークします。もちろん、MASQUEARADE のような他の iptables も持っていますが、それはこの質問には関係ありません。

    すべての「マークされた」パケットを vpn にディスパッチする iproute2 ルールがあります。

    0: from all lookup local 190: from all fwmark 0x4/0x4 lookup vpn 400: from all fwmark 0x8/0x8 oif wan0 unreachable 32766: from all lookup main 32767: from all lookup default

    vpn テーブルには 1 つのルールのみが含まれ、vpn 経由ですべてが送信されます。

    default via 10.33.0.1 dev vpn-crypto proto static src 10.33.148.125

ping -c3 37.9.239.3337.9.239.33 が vpn 用にマークされた IP アドレスであるコマンドを使用してテストします。wan0 と vpn-crypto に接続された 2 つの tcpdump セッションは、予想どおり、パケットが効果的に出て vpn-crypto 経由で戻ってくることを示しています! これまでのところ、すべてがうまくいっています。

しかし、iptables を通過するパケット フローをログに記録しているときに、理解できない奇妙な動作が見られます。ログ トレースを FILTER.OUTPUT テーブルと MANGLE.POSTROUTING テーブルに挿入します。

この一連のイベントを観察します。

FILTER.OUTPUT: IN= OUT=wan0 SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=26960 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=1 MARK=0xc MANGLE.POSTROUTING: IN= OUT=vpn-crypto SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=26960 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=1 MARK=0xc MANGLE.POSTROUTING: IN= OUT=wan0 SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27049 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=2 FILTER.OUTPUT: IN= OUT=wan0 SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27100 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=2 MARK=0xc MANGLE.POSTROUTING: IN= OUT=vpn-crypto SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27100 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=2 MARK=0xc MANGLE.POSTROUTING: IN= OUT=wan0 SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27193 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=3 FILTER.OUTPUT: IN= OUT=wan0 SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27237 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=3 MARK=0xc MANGLE.POSTROUTING: IN= OUT=vpn-crypto SRC=59.189.21.112 DST=37.9.239.33 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=27237 DF PROTO=ICMP TYPE=8 CODE=0 ID=9649 SEQ=3 MARK=0xc

  1. MANGLE.OUTPUT のマークによる再ルーティングの決定は、FILTER.OUTPUT の前に発生すると予想していますが、後で発生するようです! 実際、すべての FILTER.OUTPUT パケットはまだ wan0 経由でルーティングされており、再ルーティングの決定がまだ行われていないことを示しています。Web で入手できるドキュメントは、この点に関して 50/50 に分かれています。例えば:

    どちらが正しいですか?誰かがこれに光を当てることができますか?

  2. 3 つの ping のコンテキストで、 MANGLE.POSTROUTING テーブルに、 wan0 経由でルーティングされた 2 つの予期しないパケットが表示されますこれらは「マークされていない」ものであり、vpn-crypto経由でルーティングされたものと重複しているようです。どうしてこれなの?また、tcpdump によると、このパケットはインターフェイスに到達しません (これは正しいです)。

    誰かがこの行動に光を当てることができますか?

0 投票する
1 に答える
2305 参照

networking - OpenWRT を使用してルーターに ip パッケージをインストールする

OpenWRT v10.03.1 で Linkys WRT54G v3 ルーターを使用しています。私の最終的な目標は、ルーターでトラフィック制御 ( tc) とネットワーク エミュレーター ( ) を使用することです。これらはパッケージに含まれています (これは、ほとんどの Linux ディストリビューションのパッケージです)。netemipiproute2

ただし、コンピューターは職場のネットワークに接続されており、ルーターはイーサネット ケーブルを介してコンピューターに接続されています。仕事の都合で、ルーターを有線・無線問わずインターネットに接続できません。コンピューターからインターネットにアクセスし、次にssh経由でルーターにアクセスする必要がありますPuTTy

コンピューターにパッケージをダウンロードipしてルーターにプッシュする方法はありますか? ipパッケージを安全にダウンロードできる場所があれば、その場所を教えてもらえますか?

ありがとう。

0 投票する
0 に答える
2832 参照

linux - ip route add を使用して、マルチキャスト ルートを複数のデバイスに追加します。

TLDR: 「ip route」を使用して複数の NIC のマルチキャスト ルートを追加する方法はありますか?

別々の NICS 上の異なる IP アドレスにバインドされた 2 つのソケットを 2 つの別々のマルチキャスト グループに参加させるソフトウェアがあります。マルチキャスト グループ 239.255.100.1。

現在、ルートを使用して 2 つのネットワーク インターフェイスにマルチキャスト ルートを設定するために、bash スクリプト (Linux カーネル 3.14.39) を使用しています。

route -n で検証

私は最近、ルートが非推奨/廃止され、代わりに ip route を使用する必要があることを読みました。

残念ながら、2 番目の呼び出しは「RTNETLINK の回答: ファイルが存在します」で失敗し、もちろんこれらの呼び出しの後に 2 番目のルートは表示されません。

複数の NIC にマルチキャスト ルートを追加するために ip route を使用する方法はありますか?

/8 をネットマスクとして使用できますか? 例えば

ただし、これを行うスクリプトは、どのマルチキャスト アドレスがどのデバイスに関連付けられているかを認識せず、システム構成によっては常に同じであるとは限らないため、問題があります。ルート追加の最初の例を使用すると、これは問題になりません。