이전에 작성한 글이다.
그런데 위 글 설정처럼 해도 접속 유지가 안되는 것을 확인했다. 그래서 조금 더 자세히 알아보고 제대로 설정하는 법을 기록하고자 한다.
먼저 접속 환경이다.
- Server : Ubuntu 24.04 LTS
- Client : Windows 11 Pro (시작 메뉴 우클릭 후 나오는 터미널, PowerShell)
- Client Device : LG Gram 15ZD90N-HX56K (with ①Intel(R) Wi-Fi 6 AX201 160MHz & ②Realtek USB GbE Family Controller #2)
- Network Connection : ②Realtek USB GbE Family Controller #2 (터미널 확인 시 “이더넷 3”)
이러한 환경 하에서 Client 설정이다.
- 사용자 홈 디렉터리 (
$env:USERPROFILE = C:\Users\<user_name>) 아래에.ssh폴더 생성,-Force옵션으로 이미 있어도 오류 없이 진행New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.ssh" | Out-Null
config파일을 메모장으로 여는데, 이때, 파일이 없으면 메모장이 “새로 만들지” 물을텐데, “Yes” 하고 저장 시 “config.txt” 아닌 “config”로 저장notepad "$env:USERPROFILE\.ssh\config"
- 이후 메모장에 아래 내용 기입
# <server_alias#1>1 서버 전용 별칭(alias) 설정 — 이후로는 "ssh <server#1>" 한 줄이면 접속 가능 Host <server#1> HostName <www.xxx.yyy.zzz>2 User <ssh_user>3 Port <ssh_port>4 ServerAliveInterval 30 ServerAliveCountMax 6 TCPKeepAlive yes # <server_alias#2>5 서버 전용 별칭(alias) 설정 — 이후로는 "ssh <server#2>" 한 줄이면 접속 가능 Host <server#2> HostName <www.xxx.yyy.zzz> User <ssh_user> Port <ssh_port> ServerAliveInterval 30 ServerAliveCountMax 6 TCPKeepAlive yes # 그 외 모든 호스트에 대한 공통 keepalive 설정 (안전망) Host * ServerAliveInterval 60 ServerAliveCountMax 5 TCPKeepAlive yes
- 3번에서 종료되면 참 좋았을텐데, LG Gram 노트북이다 보니 1~3번처럼 설정해도 USB 전원 관리 영역을 건드려주지 않으면 또 제목처럼 접속이 끊기기에 시작 메뉴 우클릭 ⇒ 터미널(관리자) 실행, 이하 관리자 터미널에서 진행을 전제!!!
- 현재 시스템의 모든 네트워크 어댑터 목록과 절전 설정 상태 조회를 위해서 아래 명령 입력 후 엔터
# Get-NetAdapterPowerManagement: 어댑터별 PnP/WoL/SelectiveSuspend 등 절전 옵션을 표시 Get-NetAdapter | ForEach-Object { Write-Host "=== $($_.Name) / $($_.InterfaceDescription) ===" Get-NetAdapterPowerManagement -Name $_.Name | Format-List * } - 각 네트워크 어댑터 목록 중
SelectiveSuspend : Enabled항목 확인 ⇒ 본인의 경우 ② 하나에서만 확인 - ②의 selective suspend 비활성을 위해 아래 명령 입력 후 엔터 (그 외 다른 항목은 혹시 몰라 같이 설정)
Set-NetAdapterPowerManagement -Name "이더넷 3" ` -SelectiveSuspend Disabled ` -WakeOnMagicPacket Disabled ` -WakeOnPattern Disabled ` -DeviceSleepOnDisconnect Disabled - 아래 명령을 통해 적용 결과 확인
Get-NetAdapterPowerManagement -Name "이더넷 3" | Format-List SelectiveSuspend, WakeOnMagicPacket, WakeOnPattern, DeviceSleepOnDisconnect
- 8번의 입력 결과가 아래처럼 나오면 OK!!!
$env:USERPROFILE 6 Get-NetAdapterPowerManagement -Name "이더넷 3" | Format-List SelectiveSuspend, WakeOnMagicPacket, WakeOnPattern, DeviceSleepOnDisconnect SelectiveSuspend : Disabled WakeOnMagicPacket : Disabled WakeOnPattern : Disabled DeviceSleepOnDisconnect : Inactive - 설정이 다시 풀릴 경우 (e.g., Windows 업데이트 등등) 대비해서 레지스트리에도 등록하려면 아래처럼 입력 후 엔터
$netClassPath = "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}" $targets = Get-ChildItem $netClassPath -ErrorAction SilentlyContinue | Where-Object { $desc = (Get-ItemProperty -Path $_.PSPath -Name "DriverDesc" -ErrorAction SilentlyContinue).DriverDesc $desc -like "*Realtek*USB*GbE*" } if ($targets) { foreach ($t in $targets) { $desc = (Get-ItemProperty -Path $t.PSPath -Name "DriverDesc").DriverDesc Write-Host "발견: 키=$($t.PSChildName), DriverDesc='$desc'" Set-ItemProperty -Path $t.PSPath -Name "PnPCapabilities" -Value 24 -Type DWord -Force Write-Host " → PnPCapabilities = 24 설정 완료" } Write-Host "" Write-Host "어댑터 재시작 진행 — 5~10초 인터넷 끊김 예상" Restart-NetAdapter -Name "이더넷 3" -Confirm:$false } else { Write-Host "Realtek USB GbE 키워드를 가진 어댑터 항목을 찾지 못했습니다." }
위와 같이 설정하고 Server 접속 후 1시간여 동안 점심 먹고 왔는데도 접속 연결이 끊기지 않는 것을 확인했다.
조회수: 7