web-dev-qa-db-ja.com

Windows Server 2008:NICに複数のアドレスがある場合のデフォルトIPアドレスの指定

静的にバインドされた最大10個のIPアドレスを持つWindowsサーバーがあります。問題は、デフォルトのIPアドレスを指定する方法がわからないことです。

NICに新しいアドレスを割り当てると、NICの詳細IP構成に最後に入力したIPでデフォルトのIPアドレスが変わる場合があります。これには、(NATを使用しているため)送信パブリックIPも変更されるという影響があります。

この問題は現在Windows Server 2008で発生しています。

複数のIPアドレスがバインドされている場合、NIC=にデフォルトのIPアドレスを設定するにはどうすればよいですか?

私の問題にはもっと説明があります。

代替テキストhttp://www.nmediasolutions.com/_images/probleme/ip.png

ipconfigの出力は次のとおりです。

DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.168.99.49(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.51(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.52(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.53(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.54(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.55(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.56(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.57(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.58(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.59(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.60(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.61(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.62(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.64(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.65(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.66(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.67(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.68(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.70(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.71(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.100(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.108(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.109(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.112(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.63(Duplicate)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.99.1

私がpathpingを実行すると、答えがあります。最初の値は99.49であり、デフォルトのIPアドレスが99.100の場合も同様です。

Tracing route to www.l.google.com [72.14.204.99]
over a maximum of 30 Hops:
  0  Machine [192.168.99.49]

マシンにはルーティングテーブルがあります。

 Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0     192.168.99.1    192.168.99.49    261
           10.10.10.0    255.255.255.0         On-link       10.10.10.10    261
          10.10.10.10  255.255.255.255         On-link       10.10.10.10    261
         10.10.10.255  255.255.255.255         On-link       10.10.10.10    261
         192.168.99.0    255.255.255.0         On-link     192.168.99.49    261
        192.168.99.49  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.51  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.52  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.53  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.54  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.55  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.56  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.57  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.58  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.59  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.60  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.61  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.62  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.64  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.65  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.66  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.67  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.68  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.70  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.71  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.100  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.108  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.109  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.112  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.255  255.255.255.255         On-link     192.168.99.49    261
            224.0.0.0        240.0.0.0         On-link     192.168.99.49    261
            224.0.0.0        240.0.0.0         On-link       10.10.10.10    261
      255.255.255.255  255.255.255.255         On-link     192.168.99.49    261
      255.255.255.255  255.255.255.255         On-link       10.10.10.10    261

私のルートは次のようになるはずです:

Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0     192.168.99.1    **192.168.99.100**    261
           10.10.10.0    255.255.255.0         On-link       10.10.10.10    261
          10.10.10.10  255.255.255.255         On-link       10.10.10.10    261
         10.10.10.255  255.255.255.255         On-link       10.10.10.10    261
         192.168.99.0    255.255.255.0         On-link     192.168.99.100    261
        192.168.99.49  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.51  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.52  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.53  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.54  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.55  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.56  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.57  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.58  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.59  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.60  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.61  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.62  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.64  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.65  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.66  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.67  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.68  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.70  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.71  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.100  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.108  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.109  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.112  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.255  255.255.255.255         On-link     192.168.99.100    261
            224.0.0.0        240.0.0.0         On-link     192.168.99.100    261
            224.0.0.0        240.0.0.0         On-link       10.10.10.10    261
      255.255.255.255  255.255.255.255         On-link     192.168.99.100    261
      255.255.255.255  255.255.255.255         On-link       10.10.10.10    261

イメージで使用されているIPアドレス(デフォルトのIPアドレスであると想定される)がサーバーでデフォルトのアドレスとして使用されることをどのように確認できますか?

23
Cédric Boivin

Server 2008Service Pack 2(R2以外)、またはVista SP2およびMSホットフィックスKB975808 少し不器用ですが、解決策があります。ソースとして必要のないすべてのアドレスを削除し、コマンドラインでそれぞれを再度追加します。

Netsh int ipv4 add address <Interface Name> <ip address> skipassource=true

ホットフィックスは、「ソースとしてスキップ」フラグを有効にします。

さまざまなWindowsバージョンがソースIPを選択する方法の詳細については、こちら TechNetブログの投稿 を参照してください。

11
Paul

ネットワークインターフェースには「デフォルトIP」のようなものはありません。システムのルーティングテーブルは、他のデバイスと通信するときに使用する必要がある論理インターフェイスを定義します。

あなたがしたいことはデフォルトルートを設定することのようです。これにより、このマシンによって開始されたすべての会話が特定のIPから行われます。

Route addを使用してデフォルトゲートウェイを追加する

6
Brian Tillman

あなたの状況は完全に明確ではありませんが、私があなたを正しく理解した場合:
1)「デフォルトにする必要がある」IPを最後に設定しないのはなぜですか?

2)または、おそらくこれを試すことができます(ゲートウェイアドレスが192.168.99.1であると仮定します)。

route delete 0.0.0.0
route -p add 192.168.99.1 mask 255.255.255.255 192.168.99.100
route -p add 0.0.0.0 mask 0.0.0.0 192.168.99.1 192.168.99.100

「route」コマンドの構文の詳細については、次を参照してください。 http://www.Microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/route.mspx ?mfr = true

2
Alexey Shatygin

IPアドレスのメトリックを使用できませんか? TCP/IPプロパティで、[自動メトリック]をオフにし、261より小さい値の静的なもの(スクリーンショットに表示)をデフォルトにしたいアドレスに割り当てます。

1
Jeff Miles

Vistaのオーバーホール以降、発信コールの送信元アドレスの選択は、TCP/IPスタックによって異なる方法で処理されます。 XP/2003以前では、発信呼び出しを行うアプリケーションによって明示的に宣言されていない場合、ソースアドレスはルートテーブルによって決定されていました。 Vista/2008以降、宛先がローカルでない場合、送信元アドレスは宛先へのプレフィクスアフィニティまたはネクストホップゲートウェイアドレスによって決定できます。次のTechnetブログの投稿では、動作の変更について非常によく説明しています。

http://blogs.technet.com/b/networking/archive/2009/04/24/source-ip-address-selection-on-a-multi-homed-windows-computer.aspx

1
Brian Mellinger

私はあなたの問題を複製することができました:Windowsがlowest特定のネットワークに割り当てられたIPアドレスを使用しているようです割り当てられた実際の順序に関係なく、「発信」インターフェイスとしてのインターフェイス。

この動作に関するドキュメントは見つかりませんでしたが、仕様によるものであると確信しています。


編集する

これは本当にアメリカではできないと思います。レベルですが、アプリケーションのコードで実行できます。ソケットは、選択したIPアドレス/ポートのペアに明示的にバインドできますbeforeリモートエンドポイントに接続しています。ただし、標準のWebサービスよりも低レベルのライブラリを使用する必要があります。 I.E.手動でソケットを開き、接続して、データの読み取り/書き込みに使用する必要があります。

.NET/C#の例:

using System.Net;
using System.Net.Sockets;

IPAddress local_addr = IPAddress.Parse("192.168.99.100");
IPAddress remote_addr = IPAddress.Parse("1.2.3.4");

int local_port = 4242;
int remote_port = 80;

IPEndPoint local_ep = new IPEndPoint(local_addr,local_port);
IPEndPoint remote_ep = new IPEndPoint(remote_addr,remote_port);

Socket s = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);

s.Bind(local_ep);

s.Connect(remote_ep);

// Now use the socket to talk to the remote Host

これにより、192.168.99.100:4242から発信された1.2.3.4:80への接続が開かれるため、リモートホストは、そのIPアドレスからの接続を認識します。

IISに接続して試してテストし、指定したIPアドレスからのリクエストとしてログに記録します。

1
Massimo

Windows 2008 R2 SP1 x64 Enterpriseエディションを1つのNICを持つWebサーバーとして使用しています。

上記と同じ問題が発生しました。アウトバウンド接続をデフォルトのIPアドレス(サーバーに署名されたもの)で処理したいのですが、そのサーバー上の10個のWebサイトの10個のIPアドレスからランダムにIPアドレスを選択し続けます。

次のコマンドを実行すると、すべて優先IPアドレスとして表示されます。

Netsh int ipv4 show ipaddresses level=verbose

ホットフィックスをダウンロードしてみましたが、何らかの理由で(ダブルチェック、トリプルチェックを行ったところ)、「このOSバージョンでは実行できません。」とお試しになりました ここにあります

MS DNSサーバーを実行している場合は、同じサーバー名が11回(私の場合)登録され、サーバー用に1 IP、各Webサイト用に10 IPが登録されていることがわかります。

それが回避策であると私が信じているもの(現時点では、他の誰かがより良い解決策を持っている場合を除く)

TCPプロパティの下にあるサーバーに移動し、サーバーとWebサイトのIPアドレスを入力したところ、DNSタブが表示されます。接続アドレスを登録解除して再起動します。サーバー(およびチェックを外したままにします)。

DNSサーバーをチェックインすると、IPを含むすべてのDNSエントリが消えます。

ここでDNSにサーバー名と優先IPアドレスを手動で入力します。そして、それは問題を修正するはずです。

より良い解決策がある場合は、私たちと共有してください。

Gripe:MSがこの問題を修正しなかった理由がわかりません。優先するIPアドレスを選択するために、同じサブネット上で複数のIPアドレスを伝送するサーバー用のオプション(チェックボックスなど)を作成しておく必要があります。

1
Neo

次の形式のコマンド:
> route add 0.0.0.0 mask 0.0.0.0 192.168.99.1 metric xxx if yyy
は、マシンが192.168.99.0/24以外のアドレスと10.10.10.0/24以外のアドレスに移動したときに表示されるアドレスを変更します。つまり、デフォルトゲートウェイを使用する場合です。ルールが使用されるようにするには、メトリック(xxx)を何よりも高くする必要があります。インターフェース(yyy)は、使用するインターフェースでなければなりません。しかし、複数のIPアドレスが存在する場合、そのインターフェイスのどのIPアドレスを使用するかを制御する方法はないと思います。
> route add 192.168.99.0 mask 255.255.255.0 metric xxx if yyy
は似ていますが、システムが移動する192.168.99.0/24アドレス用です。実際、単一のインターフェースに複数のIPアドレスを割り当てると、この種の問題が発生する可能性があります。

1
Beau Geste

「デフォルトアドレス」は、インターフェースカードのプロパティの最初の入力ボックスに入力されたアドレスです。デフォルトでこのアドレスが返信されるため、他のアドレスはすべてセカンダリと見なされます。

(ISAサーバーは、接続先のIPで応答するように指示できないため、その動作の良い例です...)

0

すべての追加アドレスのネットマスクを255.255.255.255に変更し、デフォルトのアドレスのみを変更せずに解決しました。

これが解決することを願っています!

0
Aldo

私は解決策を見つけました:

  • プライマリNICで、デフォルトとして必要なIPを削除し、デフォルトのgwも削除して、高いメトリックを指定します(例:50)
  • セカンダリnicを追加し、必要なIPを「デフォルト」に設定し、ここでデフォルトGWを設定し、詳細タブで最小メトリックを設定します(例:1)

これは、20個のIPアドレスを持つ2008R2/IIS7で機能しました。

BR、マティヤ

0
user39080