特定のIPアドレスまたはネットワークインターフェイスを使用するようにAPTを設定する

特定のIPアドレスまたはネットワークインターフェイスを使用するようにAPTを設定する

サーバーに2つのIPアドレスがあり、両方が同じインターフェースに割り当てられている状況が発生しました。 APTに特定のIPを使用してパッケージをダウンロードし、キャッシュを更新するように指示する方法は?

基本的に私はAPTについてのみ--interfaceこのようなものを探しています。curl(1)

     --interface <name>

          Perform an  operation using a specified  interface. You
          can enter interface  name, IP address or  host name...

調査したところ、apt.conf(5)そこapt-transport-http(1)にはオプションがないことがわかりました。

私は2つの解決策を考えました。

  1. さまざまなインターフェイス/IPを認識するプロキシを設定し、Acquire::http::ProxyAPTにそのプロキシを通過するように指示します。

  2. まだドキュメントを詳しく見ていませんが、これを達成するためにネットワークネームスペースを設定することもできます。

APTは特定のネットワークインターフェース/ IPアドレスを使用できますか?そうでなければ、より良い解決策は何ですか?

具体的な内容は次のとおりです。

サーバーには2つのIPアドレスが割り当てられ、それぞれはインターネットNATの背後にあります。 (ここではブリッジは構成管理の便宜のためのものであり、実際にはenp1s0背面にのみありますbr0。)

$ ip address show br0
9. br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.2/22 brd 192.168.3.255 scope global dynamic br0
       valid_lft 1055sec preferred_lft 1055sec
    inet 192.168.0.3/22 brd 192.168.3.255 scope global secondary br0
       valid_lft forever preferred_lft forever
    inet6 fe80::5867:78ff:fef8:7146/64 scope link 
       valid_lft forever preferred_lft forever

これら2つのIPは、異なるパブリックIPの後にNATされます。そのうちの1つ192.168.0.3はインターネット帯域幅が高く、APTパッケージをダウンロードするのに適しています。ただし、他のほとんどすべてのネットワーク接続は異なるIPを介している必要があるため、デフォルトのルート192.168.0.2に設定されます。

望ましい効果は、APTを使用して192.168.0.3パッケージをダウンロードしてキャッシュすることです。

答え1

アップデートサーバーにルーティングできる複数のインターフェイスがある場合は、指定された一連のIPアドレス(アップデートサーバー)にルーティングするように選択する必要があります。ポリシールーティング

以下は、必要なものと似ていると思われる内容を議論するブログ投稿です。https://osric.com/chris/accidental-developer/2019/03/linux-policy-based-routing/

関連情報