イーサネットポートが1つしかないWindows 8マシンを使用しています。 DHCPを使用する必要があり、には静的IPも必要です。各IPは異なるサブネット内にあり、それぞれが異なる互換性のない目的を果たします。
サイトネットワーク管理者は、これが192.168.x.y
アドレスを取得するためにサポートされている唯一の方法であるため、このマシンはDHCPを使用する必要があります。彼のネットワークスキームでは、そのサブネット内に静的IPブロックがないか、そのいずれかをこのマシンに割り当てません。
DHCPが割り当てられたIPを静的に使用するリスクはありません。リースの有効期限が切れた後は再割り当てされないので。これにより、Windowsの機能を使用して複数の静的IPをインターフェイスに割り当てることができますが、これは運用サーバーであり、数時間または数日後にネットワークから跳ね返るリスクはありません。
一部のDHCPサーバーでは静的MACとIPの割り当てを設定できるため、マシンのDHCP IPが再割り当てされることはありませんが、それぞれ異なるサブネットにある2つの異なるIPアドレスを発行するDHCPサーバーがないことを知っているので、ここで助けます。 (そして、そのようなDHCPサーバーが存在する場合、私のクライアントはおそらくそれを使用せず、私が尋ねたとしても、それに切り替わりません。)
DHCPではこれを完全に行うことはできないため、このマシンは10.x.y.z
サブネットのサーバーとしても機能するため、静的IPが必要です。ローカルネットワーク管理者は、そのスキームで静的IPを提供していますが、それの192.168.x.y
側とも対話する必要があるため、不十分ですネットワーク。
同様の質問 こちら を知っています。私はもう一度尋ねています:
その別の質問は、Windows 7が最新のときに提起されました。おそらく、Microsoftはこの2年以上を使って、Windows 8ネットワークスタック実装のこの弱点を修正しましたか?
(はい、弱点:LinuxはDHCPと静的IPの両方を備えたネットワークインターフェイスを許可します。TCP/ IPについては、Microsoftがこれを許可することはありません。彼らはそれを可能にするためにコードを書かなければならないだけです。)
Windows 8のネットワーク構成GUIにはWindows 7と同じ制限があるようですが、DHCPインターフェイスに静的IPエイリアスを割り当てることができる低レベルのハックがあると思いますか?
最後に、DHCPと静的IPを1つのNICで共存するように構成できます。この機能は、Windows 10 Creators Update(1703)に搭載されています。
netsh interface ipv4
set interface
コマンドにdhcpstaticipcoexistence
という新しいプロパティがあり、enabled
に設定できます。このインターフェイスは、複数の静的IPとDHCP構成のIP。ただし、これはnetsh
add address
コマンドを使用して行う必要があり、まだGUIからは実行できません。
netsh
の更新に関するドキュメントはほとんど公開されておらず、インターネット全体での議論もほとんどありません(Google検索dhcpstaticipcoexistence
は5の結果のみを提供します)この答え)。しかし、この機能は本物です。
Windows 10の新しいdhcpstaticipcoexistence機能に基づく Cecilの提案 に必要な正確なコマンドは次のとおりです。
インターフェイス名を確認します。
netsh interface ipv4 show interface
Dhcpstaticipcoexistenceを有効にします。
netsh interface ipv4 set interface interface="interface name" dhcpstaticipcoexistence=enabled
静的IPアドレスをインターフェースに追加する
netsh interface ipv4 add address "interface name" 192.168.x.xxx 255.255.255.0
コマンド「ipconfig/all」を使用して、静的IPアドレスが追加されていることを確認します。 GUIからは実行できません。
小さなバッチファイルを書きました。あなたの状況でそれが機能するかどうかを確認するためにテストすることができます。 (ここではうまくいきます)
10.x.y.z
インターフェイスに問題なくアドレスします。スクリプトは次のとおりです。
@ echo off set interface = "Ethernet 2" set extra_ip = 10.0.0.33 set extra_mask = 255.255.248.0 echo設定%interface%をDHCPに戻す netsh int ipv4 set address name =%interface%source = dhcp netsh int ipv4 set dnsservers name =%interface%source = dhcp echo IPが安定するのを待っています... timeout/t 5 echo Getting%IP of%interface% ipconfig>% temp%\ ipconfig.txt for/f "tokens = 2 delims =:" %% a in( 'type%temp%\ ipconfig.txt ^ | find "IPv4" ^ | find/v "127.0" ')set _IP = %% a set IP =%_ IP:〜1% for/f "tokens = 2 delims =:" %% a in(' type%temp%\ ipconfig.txt ^ | find "Subnet" ^ | find/v "127.0" ')do set _IP = %% a set MASK =%_ IP:〜1% for/f "tokens = 2 delims =: "%% a in( 'type%temp%\ ipconfig.txt ^ | find" Default "^ | find/v" 127.0 "^ | find/v" :: "')do set _IP =% %a set GATE =%_ IP:〜1% for/f "tokens = 2 delims =:" %% a in( 'type%temp%\ ipconfig.txt ^ | find " DNSサービスers "^ | find/v "127.0" ')do set _IP = %% a set DNS1 =%_ IP:〜1% echo設定IPアドレス、サブネットマスク、デフォルトゲートウェイ。 .. echo(IP%IP%、mask%MASK%、gw%GATE%) netsh int ipv4 set address name =%interface%static%IP%%MASK%%GATE%gwmetric = 1 timeout/t 5 echo Setting Primary DNS(%DNS1%)... netsh int ipv4 set dnsserver name =%interface%static% DNS1%primary echoセカンダリIPを追加しています... netsh int ipv4 add address%interface%%extra_ip%%extra_mask% timeout/t 5 echo。 echo新しいIP構成: ipconfig /all del%temp\ipconfig.txt
これを実行する必要があるのは、リースの期間中(または再起動後)だけです。したがって、リースが10日間の場合、これをタスクスケジューラで日曜日の午前3時および再起動ごとに設定できます。コンピュータが夜間常にオフの場合、再起動後にのみ必要になります。
1つの回避策は、VMを同じマシンで実行し、静的IPをそのVMに追加することです。これにより、ホスト上に10.x.v.zネットワーク用の仮想アダプターが提供されます。
あなたが要求しているものに似たカスタムネットワーキング設定 ここで十分に文書化されています 。
起動後にIPアドレスを追加するスクリプトをスケジュールするのはどうですか。
netsh interface ipv4 add address “Local Area Connection” 10.x.y.z 255.255.255.0
Windows 10で実行されている2007のWin IP Configバージョン2.7.2を使用しました。NICをDHCPに設定し、管理としてWin IP Configを実行します(オプションをダブルクリックする代わりにアイコンを右クリックします)。次に、[IP +]をクリックして、必要な静的IPアドレスを入力します。これで、DHCPが1つと静的アドレスが2つあります。これで、組み込みシステムの開発と、1つのNICを使用したインターネットへのアクセスを同時に行うことができます。