[LG Gram] client_loop: send disconnect: Connection reset

이전에 작성한 글이다.

그런데 위 글 설정처럼 해도 접속 유지가 안되는 것을 확인했다. 그래서 조금 더 자세히 알아보고 제대로 설정하는 법을 기록하고자 한다.

먼저 접속 환경이다.

  • 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 설정이다.

  1. 사용자 홈 디렉터리 ($env:USERPROFILE = C:\Users\<user_name>) 아래에 .ssh 폴더 생성, -Force 옵션으로 이미 있어도 오류 없이 진행
    New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.ssh" | Out-Null
  2. config 파일을 메모장으로 여는데, 이때, 파일이 없으면 메모장이 “새로 만들지” 물을텐데, “Yes” 하고 저장 시 “config.txt” 아닌 “config”로 저장
    notepad "$env:USERPROFILE\.ssh\config"
  3. 이후 메모장에 아래 내용 기입
    # <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
  4. 3번에서 종료되면 참 좋았을텐데, LG Gram 노트북이다 보니 1~3번처럼 설정해도 USB 전원 관리 영역을 건드려주지 않으면 또 제목처럼 접속이 끊기기에 시작 메뉴 우클릭 ⇒ 터미널(관리자) 실행, 이하 관리자 터미널에서 진행을 전제!!!
  5. 현재 시스템의 모든 네트워크 어댑터 목록과 절전 설정 상태 조회를 위해서 아래 명령 입력 후 엔터
    # Get-NetAdapterPowerManagement: 어댑터별 PnP/WoL/SelectiveSuspend 등 절전 옵션을 표시
    Get-NetAdapter | ForEach-Object {
        Write-Host "=== $($_.Name) / $($_.InterfaceDescription) ==="
        Get-NetAdapterPowerManagement -Name $_.Name | Format-List *
    }
  6. 각 네트워크 어댑터 목록 중 SelectiveSuspend : Enabled 항목 확인 ⇒ 본인의 경우 ② 하나에서만 확인
  7. ②의 selective suspend 비활성을 위해 아래 명령 입력 후 엔터 (그 외 다른 항목은 혹시 몰라 같이 설정)
    Set-NetAdapterPowerManagement -Name "이더넷 3" `
        -SelectiveSuspend Disabled `
        -WakeOnMagicPacket Disabled `
        -WakeOnPattern Disabled `
        -DeviceSleepOnDisconnect Disabled
  8. 아래 명령을 통해 적용 결과 확인
    Get-NetAdapterPowerManagement -Name "이더넷 3" | Format-List SelectiveSuspend, WakeOnMagicPacket, WakeOnPattern, DeviceSleepOnDisconnect
  9. 8번의 입력 결과가 아래처럼 나오면 OK!!!
    $env:USERPROFILE 6 Get-NetAdapterPowerManagement -Name "이더넷 3" | Format-List SelectiveSuspend, WakeOnMagicPacket, WakeOnPattern, DeviceSleepOnDisconnect
    
    SelectiveSuspend : Disabled
    WakeOnMagicPacket : Disabled
    WakeOnPattern : Disabled
    DeviceSleepOnDisconnect : Inactive
  10. 설정이 다시 풀릴 경우 (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

Footnotes

  1. e.g, santa
  2. 111.222.333.444
  3. e.g, claus
  4. 따로 설정 안했을 경우 22
  5. rudolf
  6. PS C:\Users\<user_name>> 형태로 나오면 성공!!!

댓글 남기기