Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

(시리즈 글이 3개 있습니다.)
Windows: 131. 윈도우 10에서 사라진 "Adapters and Bindings" 네트워크 우선 순위 조정 기능
; https://www.sysnet.pe.kr/2/0/11083

Windows: 152. 윈도우 10에서 사라진 "Adapters and Bindings" 네트워크 우선순위 조정 기능 - 두 번째 이야기
; https://www.sysnet.pe.kr/2/0/11782

개발 환경 구성: 505. 윈도우 - (네트워크 어댑터의 우선순위로 인한) 열거되는 IP 주소 순서를 조정하는 방법
; https://www.sysnet.pe.kr/2/0/12304




윈도우 10에서 사라진 "Adapters and Bindings" 네트워크 우선순위 조정 기능

예전에 네트워크 우선순위 조정에 대해 설명한 적이 있는데요.

다중 LAN 카드 환경에서 Dns.GetHostAddresses(local)가 반환해 주는 IP의 우선순위는 어떻게 될까요?
; https://www.sysnet.pe.kr/2/0/1169

아쉽게도, Windows 10부터는 네트워크 설정의 "Advanced" / "Advanced Settings..." 메뉴로 뜨는 창에서 "Adapters and Bindings" 탭이 없어졌습니다.

Windows 10 Network adapter order doesn't "stick". 
; https://social.technet.microsoft.com/Forums/windows/en-US/e4ffec8c-0a2d-4858-b379-da1c2270d60a/windows-10-network-adapter-order-doesnt-stick?forum=win10itpronetworking

Cannot change Network Binding Order in Windows 10 
; http://answers.microsoft.com/en-us/insider/forum/insider_wintp-insider_web/cannot-change-network-binding-order-in-windows-10/08d775da-24d6-4b26-96fe-355920e879a0?page=2

위의 글에 보면 아쉬운 대로 해법이 나오는 데, InterfaceMetric 수치를 조정하라는 것입니다. (낮을수록 우선순위가 높습니다.)

따라서, 현재 여러분들이 컴퓨터에 바인딩 순서가 높은 순서를 보고 싶다면 다음과 같이 명령을 내리면 됩니다.

PS C:\> Get-NetIPInterface | where {$_.ConnectionState -eq "Connected"} | select ifIndex,InterfaceAlias,InterfaceMetric,AddressFamily,ConnectionState | sort InterfaceMetric | FT


ifIndex InterfaceAlias                                                            InterfaceMetric AddressFamily ConnectionState
------- --------------                                                            --------------- ------------- ----
      4 Ethernet                                                                               15          IPv4 ...d
     11 WiFi 3                                                                                 55          IPv4 ...d
      1 Loopback Pseudo-Interface 1                                                            75          IPv4 ...d

위의 경우 유선 Ethernet이 1순위이고, 이어서 무선 랜이 2순위입니다.

우선순위를 조정하고 싶다면 InterfaceMetric 수치를 변경해야 하는데, 아래의 코드는 이를 쉽게 해주는 PowerShell 스크립트입니다.

##############################################################################################################
#
# Purpose: Manually set the Binding Order (order of preference) for a specified Network Interface
#
# Written by: Joshua D. True
#
# Notes:  This script has been set to only show interfaces with an active connection (to avoid confusion dealing with unused virtual interfaces)
#         To change the script to show all interfaces, remove the following ### | where {$_.ConnectionState -eq "Connected"} ### from both lines
#         of code that begin with "Get-NetIPInterface"
#         This script requires Admin elevation!
#
##############################################################################################################

# Display active interfaces to be changed
Write-Host -ForegroundColor Red "Below is of network conenctions (with an active connection) sorted in order of highest priority first (BEFORE CHANGES)"
Get-NetIPInterface | where {$_.ConnectionState -eq "Connected"} | select ifIndex,InterfaceAlias,InterfaceMetric,AddressFamily,ConnectionState | sort InterfaceMetric | FT

# Prompt user for index and new metric value of an interface
$nicIndex=Read-Host "Enter the Index of the network connection that you would like to change"
$nicIMetric=Read-Host "Enter the new Interface Metric value to be assigned to the Index you just selected (lower number means higher priority)"
If (($nicIndex -ne $null) -and ($nicIMetric -ne $null)) {
    Set-NetIPInterface -InterfaceIndex $nicIndex -InterfaceMetric $nicIMetric
}

# Display active interfaces after change has been made (just for confirmation that change you made was entered correctly)
Write-Host -ForegroundColor Green "Below is of network conenctions (with an active connection) sorted in order of highest priority first (AFTER CHANGES)"
Get-NetIPInterface | where {$_.ConnectionState -eq "Connected"} | select ifIndex,InterfaceAlias,InterfaceMetric,AddressFamily,ConnectionState | sort InterfaceMetric | FT

# END




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 3/1/2024]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2018-11-18 10시23분
윈도우 10에서 사라진 "Adapters and Bindings" 네트워크 우선순위 조정 기능 - 두 번째 이야기
; http://www.sysnet.pe.kr/2/0/11782
정성태

1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13437정성태11/8/20232833닷넷: 2156. .NET 7 이상의 콘솔 프로그램을 (dockerfile 없이) 로컬 docker에 배포하는 방법
13436정성태11/7/20233087닷넷: 2155. C# - .NET 8 런타임부터 (Reflection 없이) 특성을 이용해 public이 아닌 멤버 호출 가능
13435정성태11/6/20232990닷넷: 2154. C# - 네이티브 자원을 포함한 관리 개체(예: 스레드)의 GC 정리
13434정성태11/1/20232770스크립트: 62. 파이썬 - class의 정적 함수를 동적으로 교체
13433정성태11/1/20232470스크립트: 61. 파이썬 - 함수 오버로딩 미지원
13432정성태10/31/20232548오류 유형: 878. 탐색기의 WSL 디렉터리 접근 시 "Attempt to access invalid address." 오류 발생
13431정성태10/31/20232911스크립트: 60. 파이썬 - 비동기 FastAPI 앱을 gunicorn으로 호스팅
13430정성태10/30/20232748닷넷: 2153. C# - 사용자가 빌드한 ICU dll 파일을 사용하는 방법
13429정성태10/27/20233032닷넷: 2152. Win32 Interop - C/C++ DLL로부터 이중 포인터 버퍼를 C#으로 받는 예제파일 다운로드1
13428정성태10/25/20233125닷넷: 2151. C# 12 - ref readonly 매개변수
13427정성태10/18/20233311닷넷: 2150. C# 12 - 정적 문맥에서 인스턴스 멤버에 대한 nameof 접근 허용(Allow nameof to always access instance members from static context)
13426정성태10/13/20233468스크립트: 59. 파이썬 - 비동기 호출 함수(run_until_complete, run_in_executor, create_task, run_in_threadpool)
13425정성태10/11/20233245닷넷: 2149. C# - PLinq의 Partitioner<T>를 이용한 사용자 정의 분할파일 다운로드1
13423정성태10/6/20233220스크립트: 58. 파이썬 - async/await 기본 사용법
13422정성태10/5/20233374닷넷: 2148. C# - async 유무에 따른 awaitable 메서드의 병렬 및 예외 처리
13421정성태10/4/20233457닷넷: 2147. C# - 비동기 메서드의 async 예약어 유무에 따른 차이
13420정성태9/26/20235730스크립트: 57. 파이썬 - UnboundLocalError: cannot access local variable '...' where it is not associated with a value
13419정성태9/25/20233284스크립트: 56. 파이썬 - RuntimeError: dictionary changed size during iteration
13418정성태9/25/20233986닷넷: 2146. C# - ConcurrentDictionary 자료 구조의 동기화 방식
13417정성태9/19/20233517닷넷: 2145. C# - 제네릭의 형식 매개변수에 속한 (매개변수를 가진) 생성자를 호출하는 방법
13416정성태9/19/20233299오류 유형: 877. redis-py - MISCONF Redis is configured to save RDB snapshots, ...
13415정성태9/18/20233799닷넷: 2144. C# 12 - 컬렉션 식(Collection Expressions)
13414정성태9/16/20233570디버깅 기술: 193. Windbg - ThreadStatic 필드 값을 조사하는 방법
13413정성태9/14/20233762닷넷: 2143. C# - 시스템 Time Zone 변경 시 이벤트 알림을 받는 방법
13412정성태9/14/20237065닷넷: 2142. C# 12 - 인라인 배열(Inline Arrays) [1]
13411정성태9/12/20233555Windows: 252. 권한 상승 전/후 따로 관리되는 공유 네트워크 드라이브 정보
1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...