Windows 8 이상에서 DHCP 인터페이스에 고정 IP 별명 추가


16

단일 이더넷 포트만있는 Windows 8 시스템이 있습니다. 그것은 DHCP를 사용해야 하고 또한 정적의 IP를 필요로한다. 각 IP는 서로 다른 서브넷에 있으며 서로 호환되지 않는 서로 다른 용도로 사용됩니다.

사이트 네트워크 관리자는 이것이 192.168.x.y주소 를 얻는 데 지원되는 유일한 방법이므로이 컴퓨터는 DHCP를 사용해야합니다 . 네트워크 구성표에 해당 서브넷 내에 고정 IP 블록이 없거나이 중 하나를이 컴퓨터에 할당하지 않습니다.

DHCP 할당 IP를 정적으로 사용하는 위험은 없습니다. 임대 기간이 만료 된 후에는 다시 할당하지 않을 것입니다. 이렇게하면 Windows의 여러 고정 IP를 인터페이스에 할당하는 기능을 사용할 수 있지만 이것은 프로덕션 서버이므로 몇 시간 또는 며칠 후에 네트워크에서 튕겨 나올 위험이 없습니다.

일부 DHCP 서버를 사용하면 정적 MAC 대 IP 할당을 설정할 수 있으므로 내 컴퓨터의 DHCP IP가 다시 할당되지 않지만 각각 다른 서브넷에서 두 개의 다른 IP 주소를 발행하는 DHCP 서버가 없다는 것을 알고 있기 때문에 여기서 도와주세요. (그리고 그러한 DHCP 서버가 있다면, 내 클라이언트는 아마도 그것을 사용하지 않을 것이고 내가 요청하면 서버로 전환하지 않을 것입니다.)

DHCP를 사용하여이 작업을 완전히 수행 할 수 없으므로이 컴퓨터는 10.x.y.z서브넷 의 서버 역할도하기 때문에 고정 IP가 필요합니다 . 로컬 네트워크 관리자 해당 체계에서 고정 IP를 제공했지만 192.168.x.y네트워크 측과 대화해야하기 때문에 불충분 합니다.

나는 비슷한 질문을 알고 있다 . 다음과 같은 이유로 다시 묻습니다.

  1. 다른 질문은 Windows 7이 최신 일 때 제기되었습니다. 아마도 Microsoft는 2 년 이상 Windows 8 네트워크 스택 구현에서이 취약점을 해결하기 위해 사용 했습니까?

    (예, 약점 : Linux는 DHCP와 고정 IP를 가진 네트워크 인터페이스를 허용합니다. TCP / IP에 대해서는 Microsoft가이를 허용하지 못하도록 막는 것이 없습니다. 단지이를 허용하기 위해 코드를 작성하면됩니다.)

  2. Windows 8의 네트워크 구성 GUI는 Windows 7과 동일한 제한이 있지만 DHCP 인터페이스에 정적 IP 별칭을 할당 할 수있는 저수준 해킹이 있습니까?

답변:


14

마지막으로 DHCP와 고정 IP를 하나의 NIC에 공존하도록 구성 할 수 있습니다. 이 기능은 Windows 10 Creators Update (1703)에 포함되었습니다.

명령 dhcpstaticipcoexistence에서 호출되는 새로운 속성이 있으며이 속성 은 DHCP로 구성된 IP와 함께 여러 정적 IP로 구성 될 수 있습니다. 그러나 이것은 GUI를 통해 아직 불가능한 명령 으로 수행해야합니다 .netsh interface ipv4 set interfaceenablednetsh add address

netsh전체 인터넷에 대한 업데이트에 대한 문서는 거의 공개되지 않았 으며 전체 인터넷 에서 업데이트에 대한 토론은 거의 없습니다 (Google 검색 에서는이 답변 당시 5 개의 결과 dhcpstaticipcoexistence만 제공합니다 ). 그러나이 기능은 실제입니다.


5
이 답변은 재부팅 과정에서 효과가 있었고 좋은 자사 솔루션처럼 보였으므로 나에게 매우 유용했습니다. 사용할 명령의 예를 포함시키는 것이 좋을 것입니다. 이 답변은 예제 명령을 내리는 데 너무 가까웠지만 정확한 구문을 찾으려면 Google로 이동해야했습니다. 내 마지막 명령은 netsh interface ipv4 set interface interface="Ethernet" dhcpstaticipcoexistence=enablednetsh interface ipv4 add address "Ethernet" 192.168.1.200 255.255.255.0이었다.
jljtgr

13

Windows 10의 새로운 dhcpstaticipcoexistence 기능을 기반으로 Cecil의 제안에 필요한 정확한 명령은 다음과 같습니다 .

  1. 인터페이스 이름을 찾으십시오.

    netsh interface ipv4 show interface
    
  2. dhcpstaticip 공존 활성화 :

    netsh interface ipv4 set interface interface="interface name" dhcpstaticipcoexistence=enabled
    
  3. 인터페이스에 고정 IP 주소 추가

    netsh interface ipv4 add address "interface name" 192.168.x.xxx 255.255.255.0
    
  4. 'ipconfig / all'명령을 사용하여 고정 IP 주소가 추가되었는지 확인하십시오. GUI에서는 할 수 없습니다.


6

작은 배치 파일을 작성했습니다. 상황에 맞는지 테스트 할 수 있습니다. (여기서 잘 작동합니다)

  • 인터페이스를 다시 DHCP로 설정합니다.
  • 그런 다음 IP, 서브넷 마스크, 기본 게이트웨이 및 첫 번째 DNS 서버를 추출합니다. 이것은 어려운 일입니다. 특히 인터페이스가 여러 개인 경우. 그것이 작동하지 않으면 우리는 그것을 작동시키기 위해 약간 바이올린을 움직여야합니다.
  • 두 번째 DNS도 원한다면 여기에 추가해야합니다 (그러나 지금은 하나의 DNS가 좋기 때문에 그다지 보이지 않았습니다).
  • 인터페이스에서 이러한 설정을 "정적"으로 설정합니다.
  • 그 후에 10.x.y.z문제없이 인터페이스에 주소를 추가 할 수 있습니다 .

스크립트는 다음과 같습니다.

@ 에코 오프
set interface = "이더넷 2"
extra_ip = 10.0.0.33 설정
extra_mask = 255.255.248.0 설정

echo % interface %를 다시 DHCP로 설정
netsh int ipv4 설정 주소 이름 = % interface % source = dhcp
netsh int ipv4 set dnsservers 이름 = % interface % source = dhcp

echo IP가 안정화되기를 기다리는 중 ...
타임 아웃 / t 5

echo % interface %의 현재 IP 얻기
ipconfig> % temp % \ ipconfig.txt
/ f "tokens = 2 delims = :"%% a in ( 'type % temp % \ ipconfig.txt ^ | "IPv4"찾기 ^ | find / v "127.0"') _IP = %% a 설정
IP = % _ IP 설정 : ~ 1 %
/ f "tokens = 2 delims = :"%% a in ( 'type % temp % \ ipconfig.txt ^ | "Subnet"찾기 ^ | find / v "127.0"') _IP = %% a 설정
MASK = % _ IP 설정 : ~ 1 %
/ f "tokens = 2 delims = :"%% a in ( 'type % temp % \ ipconfig.txt ^ | find "Default"^ | find / v "127.0"^ | find / v "::"') _IP = %% a 설정
GATE = % _ IP 설정 : ~ 1 %
/ f "tokens = 2 delims = :"%% a in ( 'type % temp % \ ipconfig.txt ^ | "DNS 서버 찾기'^ | find / v"127.0 " ') _IP = %% a 설정
DNS1 = % _ IP 설정 : ~ 1 %

에코 설정 IP 주소, 서브넷 마스크 및 기본 게이트웨이 ...
에코 (IP % IP %, 마스크 % MASK %, gw % GATE %)
netsh int ipv4 set address name = % interface % 정적 % IP % % MASK % % GATE % gwmetric = 1

타임 아웃 / t 5
에코 주 DNS 설정 (% DNS1 %) ...
netsh int ipv4 set dnsserver 이름 = % interface % 정적 % DNS1 % 기본

echo 보조 IP 추가 중 ...
netsh int ipv4 주소 추가 % interface % % extra_ip % % extra_mask %

타임 아웃 / t 5
에코.
에코 새로운 IP 구성 :
ipconfig / all

델 % temp \ ipconfig.txt

임대 기간 동안 또는 다시 시작한 후에 만이 작업을 실행하면됩니다. 따라서 임대 기간이 10 일인 경우 일요일과 재시작 할 때마다 작업 스케줄러에서 오전 3 시로 설정할 수 있습니다. 밤에 컴퓨터가 항상 꺼져 있으면 다시 시작한 후에 만 ​​필요합니다.


3

한 가지 해결 방법은 동일한 컴퓨터에서 VM을 실행하고 해당 VM에 고정 IP를 추가하는 것입니다. 이것은 본질적으로 호스트에 가상 어댑터를 제공하지만 10.xvz 네트워크를 위해 제공됩니다.

요청한 것과 유사한 사용자 지정 네트워킹 구성 은 여기에 잘 정리되어 있습니다 .


VM 아이디어는 쇠 망치로 나비를 사냥하는 것입니다. VM 시스템 추가 및 VM 사용을위한 Windows 라이센싱 은 시스템에 두 번째 NIC를 추가하는 것보다 복잡하고 비용이 많이 듭니다. 10.x.y.z단일 프로그램을 제공 하려면 주소 만 있으면 됩니다.
워렌 영

그렇기 때문에 "하나의 해결 방법이있을 수 있습니다."라는 대답을 시작합니다 ..; VM을 추가하면 확실히 작동합니다. 멀티 호밍은 분명합니다. 그러나 다시, 당신의 아이디어는 근본적으로 원래의 질문을 바꿀 것입니다. 행운을 빕니다
Fergus

1

부팅 후 IP 주소를 추가하기위한 스크립트 예약은 어떻습니까?

netsh interface ipv4 add address “Local Area Connection” 10.x.y.z 255.255.255.0

좋은 생각이지만 어댑터를 DHCP에서 강제로 제거 할 것이라고 확신합니다.
Fergus

나는 그것을 테스트했고 @Fergus가 옳다. netsh interface ipv4 show address이것 후에 고정 IP 만 제공된다. DHCP IP가 사라졌습니다.
워렌 영

죄송합니다. 지금 기억합니다. 옵션은 현재 IP를 얻은 다음 둘 다 다시 추가하는 것입니다. DHCP 임대가 활발하게 사용되는 동안 갱신되지 않을 가능성은 거의 없으므로 (이를 피하기위한 유예 기간이 있음) 부팅시에만 중요합니다.
Paul

@Paul :으로 DHCP 주소를 다시 추가하면 netsh고정 IP가 아니므로 Windows 상자 스택이 DHCP 임대 갱신을 DHCP 서버로 계속 보내지 않습니까? 초기 임대 시간이되면 DHCP 서버는 해당 주소를 자유롭게 다시 할당 할 수 있습니다.
워렌 영

@WarrenYoung 임대 기간이 얼마나 걸립니까? ( ipconfig /all. 라우터의 경우 10 일입니다.) 따라서 임대가 끝나기 전에 컴퓨터를 다시 시작해도 문제가되지 않습니다. 그렇지 않으면 당신은 추가 할 수 ipconfig /releaseipconfig /renew이 줄 위 (아무도 컴퓨터 뒤에 없을 때) 새벽 3시에 실행되도록 예약합니다.
Rik

0

Windows 10에서 실행되는 2007의 Win IP Config 버전 2.7.2를 사용했습니다. NIC를 DHCP로 설정하고 Win IP Config를 관리 권한으로 실행하십시오 (옵션을 두 번 클릭하는 대신 오른쪽 클릭 아이콘). 그런 다음 IP +를 클릭하고 원하는 정적 ipaddress를 입력하십시오. 이제 하나의 DHCP와 두 개의 고정 주소가 있습니다. 이제 내장 된 시스템을 개발하고 하나의 NIC로 인터넷에 동시에 액세스 할 수 있습니다!


이것은 보인다 ... 그래서 ... 으스스한 ....
paquetp
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.