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


23

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

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

この問題は現在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アドレスと想定)がサーバーでデフォルトのアドレスとして使用されていることを確認するにはどうすればよいですか?

回答:


11

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

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

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

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


6

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

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

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


ルーティングテーブルを変更する方法は、実際は99.49です。デフォルトルートは99.100である必要があります
セドリックボイヴィン

デフォルトゲートウェイはデフォルトルートであり、その逆も同様です。それは用語の問題です。
ケビンM

私はそれを知っていますが、デフォルトのルートを変更することはできません。どうすれば変更できますか?正しいコマンド式は何ですか
セドリックボイビン

1
これを試すことができます:「ルートは0.0.0.0マスク0.0.0.0 192.168.99.100メトリック2を追加」
ジェフマイル

そうすれば、間違ったゲートウェイだからインターネットに行くことができなくなります。
セドリックボイヴィン

2

あなたの状況ははっきりしていませんが、私があなたに正しい
と言えば: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をご覧ください。


動作しません、コマンドは良くありません。エラー、指定されたファイルが見つかりません
セドリックボイビン

「if」なしで試してください:route -p 192.168.99.1 mask 255.255.255.255 192.168.99.100を追加しますが、動作するはずです。エラーを引用してください。
アレクセイシャティギン

今回はエラーメッセージは表示されませんが、何も変わりません
セドリックボイヴィン

ルーティングテーブルを変更する必要があります。「ルート印刷」、このコマンド、「ルート印刷」を再度実行して、ここに出力を配置できますか?
アレクセイシャティギン

そして、私が投稿したコマンドを実行する前に、メイク「ルートは、0.0.0.0を削除」
アレクセイShatygin

1

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


私はそれを試してみます、それは良いアイデアです。
セドリックボイヴィン

動作しないでください、私の投稿で私の修正を参照してください。
セドリックボイビン

インターフェイスアドレスを変更する方法はありますか?
セドリックボイビン

1

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


1

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

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


編集

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

.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アドレスからの要求としてログに記録します。


IPアドレスとのバイナリ比較になりそうなウェアを読みましたか?
セドリックボイヴィン

1
はい、バイナリ比較は「最も低いもの」が選択される方法である可能性が非常に高いです。ただし、異なるサブネットに属するIPを試したことはありません。
マッシモ

現時点での私の最大の問題は、複数のIPアドレスに300を超えるWebサイトがあり、サーバーがインターネットに接続して別のサーバー(Webサービス)を呼び出すと、サーバーのパブリックIPが特定できないことです。
セドリックボイヴィン

この回答に感謝しますが、私のシナリオでは、このソリューションを適用することは不可能です。ソリューションは、OS、またはファイアウォールから来る必要があります。アプリケーションごとに問題を解決するのに良い方法ですが、各Webサイトの問題を解決するために多くのアプリケーションに行きます。
セドリックボイヴィン

ただし、希望どおりにできたとしても、異なるWebサイトで異なるIPを使用することはできません。この方法で、次のことができます:-)
Massimo

1

アウトバウンドコールの送信元アドレスの選択は、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

1つのNICを備えたWebサーバーとして使用されているWindows 2008 R2 SP1 x64 Enterpriseエディションがあります。

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

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

Netsh int ipv4 show ipaddresses level=verbose

私はそれが)、それは、このOSのバージョンでは実行できません」と述べた(と私は、ダブル、トリプルチェックする)ホットフィックスをダウンロードしようとしましたが、いくつかの理由で。あなたたちは試してみたい場合は、ここにあります

MS DNSサーバーを実行している場合、同じサーバー名が11回(私の場合)サーバーに1 IP、各Webサイトに10 IPが登録されることに気づくでしょう。

私はそれが回避策になる可能性があると信じています(現時点では、他の誰かがより良い解決策を持たない限り)

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

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

今、DNSでサーバー名および優先IPアドレスを手動で入力します。そしてそれは問題を解決するはずです。

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

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


0

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

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


それはそのようになると思われますが、動作しません。私の場合はIP 99.49は、高度な設定であり、99.100は....のIPv4のプロパティで指定した1つである
セドリック・Boivin

ここでのインフラストラクチャはWebサーバーのフィルターなどにこれを多く使用しているため、これは本当に奇妙です。デフォルトにしたいものを除いて、カードのプロパティからすべてのIPを削除し、適用し、後で元に戻しましたか?
アレクサンドルニゾー

はい、試してみて、99.49を入力すると同じ問題が発生します
セドリックボイヴィン

99.49はあなたのIPの中で最低ですか?
アレクサンドルニゾー

はい、トップにある私のipconfigを見ることができます
セドリックボイヴィン

0

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

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

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

BR、マティヤ


0

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

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.