마인크래프트 설치 파일이 손상되었거나 오래된 버전일 경우, 런처에서 '내부 예외 Java.IO.IOException(Internal Exception java.io.IOException)' 오류가 나타날 수 있습니다. 또한 시스템의 DNS 캐시가 손상되었거나 자바(Java) 설정이 잘못 구성된 경우에도 동일한 문제가 발생할 수 있습니다.
이 오류는 주로 사용자가 서버에 접속하려고 할 때 아래와 같은 메시지와 함께 나타납니다.
"Connection Lost — Internal Exception: java.io.IOException: An existing connection was forcibly closed by the remote host"
문제 해결 전 기본 점검 사항
본격적인 해결 방법을 시도하기 전에 다음 항목들을 먼저 확인해 보세요.
- 유선 인터넷(이더넷) 연결 중이라면 다른 네트워크 케이블로 교체해 문제가 해결되는지 확인합니다.
- 사용자 이름이 7자 이상이라면 7자 이하로 줄여보세요.
- 인터넷 속도가 마인크래프트 최소 요구 사양을 충족하는지 확인합니다.
- Minechat을 사용 중이라면 로그아웃 후 프로그램을 완전히 종료합니다.
- 마인크래프트 런처(또는 서버)를 관리자 권한으로 실행해 문제가 해결되는지 확인합니다.
손상된 시스템 파일 복구
Restoro를 다운로드하여 실행하면 손상되었거나 누락된 시스템 파일을 자동으로 스캔하고 복구할 수 있습니다. 복구를 마친 후 아래의 해결 방법들을 순서대로 진행하세요.
방법 1: 마인크래프트 런처를 최신 버전으로 업데이트
런처가 구버전일 경우 서버와의 호환성 문제로 내부 예외 오류가 발생할 수 있습니다. 이 경우 런처를 최신 빌드로 업데이트하면 문제가 해결될 수 있습니다.
업데이트 전에 마인크래프트 런처에 여러 개의 계정이 등록되어 있다면, 하나를 남기고 모두 제거하는 것이 좋습니다.
- 마인크래프트 런처를 실행하고 사용자 이름 옆의 옵션(Options)을 클릭합니다.
- 강제 업데이트(Force Update) 버튼을 클릭하고 런처 업데이트를 적용합니다.
- 업데이트가 완료되면 런처를 다시 실행하고 IOException 오류가 사라졌는지 확인합니다.
- 그래도 문제가 지속되면 다른 런처를 사용해 문제가 해결되는지 테스트해 보세요.
방법 2: 시스템의 DNS 캐시 삭제
DNS 캐시가 손상되면 도메인 이름을 올바르게 확인하지 못해 Java IO 오류가 발생할 수 있습니다. DNS 캐시를 플러시(flush)하면 시스템이 도메인 정보를 새로 가져오게 되어 문제가 해결될 수 있습니다.
- Windows 키를 누르고 명령 프롬프트(Command Prompt)를 검색한 뒤, 마우스 오른쪽 버튼으로 클릭하여 관리자 권한으로 실행을 선택합니다.
- 아래 명령어를 하나씩 순서대로 입력하고 실행합니다.
ipconfig /flushdns ipconfig /release ipconfig /renew
- 명령 프롬프트를 종료한 후 Java 예외 오류가 해결되었는지 확인합니다.
문제가 계속된다면 DNS 서버를 변경(예: Google DNS)한 후 내부 예외 오류가 해결되는지 확인해 보세요.
방법 3: 서버 리소스 팩 비활성화
리소스 팩은 텍스처, 음악, 모델 등 다양한 커스터마이징을 가능하게 하지만, 클라이언트와 서버 간 통신을 방해하여 IOException 오류를 유발할 수 있습니다. 이 경우 서버의 리소스 팩을 비활성화하면 문제가 해결될 수 있습니다.
- 마인크래프트 런처를 열고 멀티플레이어(Multiplayer)를 선택합니다.
- 문제가 되는 서버를 선택하고 편집(Edit)을 클릭합니다.
- 서버 리소스 팩(Server Resource Packs) 항목을 클릭하여 비활성화(Disabled)로 설정한 후 완료(Done)를 누릅니다.
- Java IO 오류가 사라졌는지 확인합니다.
방법 4: 충돌하는 프로그램 제거
시스템의 특정 프로그램이 마인크래프트 작동을 방해하면 Java IO 오류가 발생할 수 있습니다. 클린 부팅을 통해 문제가 되는 프로그램을 찾아 제거하면 됩니다. 여기서는 사용자들이 문제 원인으로 보고한 Hamachi VPN을 예시로 설명합니다.
- Windows 시작 버튼을 마우스 오른쪽 버튼으로 클릭하고 앱 및 기능(Apps and Features)을 엽니다.
- LogMeIn Hamachi를 찾아 클릭해 확장한 후 제거(Uninstall)를 클릭합니다.
- 화면의 안내에 따라 Hamachi를 삭제하고 PC를 재부팅합니다.
- 재부팅 후 IOException 오류가 해결되었는지 확인합니다.
방법 5: 마인크래프트 설정에서 렌더 거리 줄이기
인터넷 속도가 느려 모든 블록을 한 번에 렌더링하지 못하면 내부 예외 오류가 발생할 수 있습니다. 이 경우 마인크래프트 설정에서 렌더 거리(Render Distance)를 최소값으로 낮추면 문제가 해결될 수 있습니다.
- 마인크래프트 런처를 열고 옵션(Options)에 들어갑니다. 가능하다면 서버 설정에서도 렌더 거리를 낮추는 것이 좋습니다.
- 비디오 설정(Video Settings)을 선택하고 렌더 거리(Render Distance)를 최소값(예: 2)까지 낮춥니다.
- Java IO 오류가 해결되었는지 확인합니다. 해결되었다면 원하는 렌더 거리에 도달할 때까지 값을 하나씩 올려가며 조절할 수 있습니다.
방법 6: 자바(Java) 설정 편집
시스템에 설치된 Java가 올바르게 구성되지 않으면 Java IO 오류가 발생할 수 있습니다. 진행하기 전에 반드시 Java가 하나만 설치되어 있는지 확인하세요.
Java를 최신 버전으로 업데이트
- Windows 키를 누르고 Java 구성(Configure Java)을 검색하여 실행합니다.
- 업데이트(Update) 탭으로 이동한 후 지금 업데이트(Update Now) 버튼을 클릭합니다.
- 업데이트가 있다면 적용한 후 내부 예외 오류가 해결되었는지 확인합니다.
네이티브 샌드박스 활성화
- Java 구성(Configure Java)을 검색하여 엽니다.
- 고급(Advanced) 탭으로 이동한 후 운영 체제의 제한된 환경 활성화(네이티브 샌드박스) 항목에 체크합니다.
- 변경 사항을 적용하고 PC를 재부팅합니다.
- 재부팅 후 마인크래프트 IOException 오류가 해결되었는지 확인합니다.
런처 설정에서 Java 경로 수정
- Windows 키를 마우스 오른쪽 버튼으로 클릭하고 실행(Run)을 엽니다.
- 아래 경로로 이동합니다.
\Program Files (x86)\
- Java 폴더를 연 후 가장 최신 버전의 Java 폴더(예: jre1.8.0_291 폴더)로 이동합니다.
- Bin 폴더를 열고 주소창에서 주소를 복사합니다.
- 마인크래프트 런처를 열고 Edit Profile을 선택합니다.
- Java 설정(고급, Java Settings Advanced)에서 실행 파일(Executable) 옵션에 체크합니다.
- 4단계에서 복사한 주소를 Bin까지 붙여넣습니다. 경로는 아래와 같은 형태여야 합니다.
C:\Program Files (x86)\Java\jre1.8.0_291\bin\javaw.exe
- 변경 사항을 적용한 후 내부 예외 오류가 해결되었는지 확인합니다.
문제가 계속된다면 Java를 재설치한 후 IOException 오류가 해결되는지 확인해 보세요.
방법 7: 마인크래프트 복구 또는 재설치
마인크래프트 설치 파일이 손상된 경우 Java IO 오류가 발생할 수 있습니다. 이 경우 복구 또는 재설치를 통해 문제를 해결할 수 있습니다.
- Windows 키를 누르고 제어판(Control Panel)을 검색하여 실행합니다.
- 프로그램 제거(Uninstall a Program)를 연 후 Minecraft를 선택합니다.
- 복구(Repair)를 클릭하고 화면 안내에 따라 마인크래프트를 복구합니다.
- PC를 재부팅한 후 IOException 오류가 해결되었는지 확인합니다.
복구로 해결되지 않았다면 재설치를 진행합니다.
- Minecraft와 Java를 제거합니다(필요한 데이터는 미리 백업하세요).
- PC를 재부팅한 후 Windows 키를 마우스 오른쪽 버튼으로 클릭하고 실행(Run)을 선택합니다.
- 아래 명령어를 입력하여 이동합니다.
AppData
- Local, LocalLow, Roaming 폴더를 각각 열어 그 안의 Minecraft 폴더를 모두 삭제합니다.
- 최신 버전의 Java와 Minecraft를 다운로드합니다.
- 관리자 권한으로 Java를 설치한 후 PC를 재부팅합니다.
- 재부팅 후 관리자 권한으로 Minecraft를 설치하고 내부 예외 오류가 해결되었는지 확인합니다.
방법 8: 네트워크 관련 설정 편집
시스템의 네트워크 설정이 올바르게 구성되지 않았거나, 인터넷 제공업체(ISP)가 마인크래프트 운영에 필수적인 리소스 접근을 차단하는 경우 내부 예외 오류가 발생할 수 있습니다. 이 경우 네트워크 설정을 변경하거나 다른 네트워크/VPN을 사용해 보세요.
다른 네트워크 또는 VPN 사용
- 현재 네트워크에서 연결을 해제하고 다른 네트워크(예: 스마트폰 핫스팟)에 연결하여 IOException 오류가 해결되는지 확인합니다. VPN을 사용해서도 테스트할 수 있으며, Wi-Fi와 유선 이더넷을 번갈아 연결해 보는 것도 좋은 방법입니다.
- 문제가 지속되면 공유기를 거치지 않고 시스템을 인터넷에 직접 연결하여 공유기 설정이 원인인지 확인합니다.
공유기 설정에서 NAT 가속 비활성화
- 웹 브라우저를 실행하고 공유기 관리 페이지에 접속합니다.
- 왼쪽 메뉴에서 LAN을 선택하고 스위치 컨트롤 탭에서 하드웨어 가속(Hardware Acceleration)을 비활성화합니다. 해당 옵션이 보이지 않는다면 CTF(Cut-Through Forwarding), FA(Flow Accelerator) 등 다른 이름으로 검색해 보세요.
- 변경 사항을 적용한 후 내부 예외 오류가 해결되었는지 확인합니다.
방법 9: 방화벽 설정 편집
시스템 방화벽이 마인크래프트 운영에 필요한 리소스 접근을 차단하면 내부 예외 오류가 발생할 수 있습니다. 방화벽 설정에서 Java(TM) Platform SE Binary를 허용하면 문제가 해결될 수 있습니다. 진행 전에 일단 방화벽을 잠시 비활성화했을 때 문제가 해결되는지 먼저 확인해 보는 것도 좋습니다. 여기서는 Windows Defender 방화벽 기준으로 설명합니다.
주의: 방화벽 설정을 잘못 수정하면 시스템과 데이터가 위협에 노출될 수 있으므로 신중하게 진행하세요.
방화벽에서 Java(TM) Platform SE를 개인 네트워크로 설정
- Windows 키를 누르고 Windows 방화벽을 통해 앱 허용을 검색하여 실행합니다.
- 설정 변경(Change Settings)을 클릭하고 앱 목록에서 Java(TM) Platform SE Binary를 찾습니다. 목록에 없다면 다른 앱 허용을 클릭한 후 Java 설치 디렉터리(일반적으로 Program Files 및 Program Files (x86) 폴더 내 Java 폴더)로 이동하여 Javaw.exe를 더블클릭합니다.
- 모든 Java(TM) Platform SE Binary 프로세스에 대해 공용(Public) 체크를 해제하고 개인(Private)에 체크합니다.
- Java(TM) Platform SE Binary를 선택한 후 세부 정보(Details)를 클릭합니다.
- 네트워크 유형(Network Type)을 열고 개인(Private)에 체크합니다.
- 변경 사항을 적용하고 PC를 재부팅합니다.
- 재부팅 후 IOException 오류가 해결되었는지 확인합니다.
방화벽에서 마인크래프트 허용
- Windows 키를 누르고 방화벽을 검색한 후 Windows Defender 방화벽을 엽니다.
- Minecraft 관련 인바운드/아웃바운드 규칙 중 연결 차단으로 설정된 것이 없는지 확인합니다.
- 인바운드 규칙(Inbound Rules)을 선택하고 새 규칙(New Rule)을 클릭합니다.
- 프로그램(Program)을 선택하고 다음(Next)을 클릭합니다.
- 찾아보기(Browse)를 클릭하여 Minecraft 설치 디렉터리로 이동합니다.
- Minecraft.exe를 더블클릭하고 연결 허용(Allow the Connection)을 선택합니다.
- 다음을 클릭하고 세 가지 프로필(공용, 개인, 도메인)을 모두 선택합니다.
- 규칙에 이름을 지정하고 마침(Finish)을 클릭합니다.
- 아웃바운드 규칙(Outbound Rule)에도 동일한 과정을 반복한 후 PC를 재부팅합니다.
- 재부팅 후 Java IO 오류가 해결되었는지 확인합니다.
문제가 계속된다면 공유기 방화벽(특히 자동 차단 기능이 있는 경우)에서 마인크래프트 연결을 허용했는지 확인하세요. 그래도 해결되지 않으면 자녀 보호 기능이 마인크래프트 접근을 제한하고 있지 않은지 점검하고, 마인크래프트 요구 사항에 맞게 시스템/공유기 방화벽에서 포트 포워딩이 올바르게 설정되어 있는지도 확인하는 것이 좋습니다.
그래도 문제가 해결되지 않는다면 마인크래프트에 더 많은 RAM을 할당해 보세요. 이것으로도 해결되지 않으면 서버 관리자에게 문의하여 플레이어 데이터 삭제나 서버 측 문제 여부를 확인할 수 있습니다. 모든 방법이 실패했다면 PC 초기화(공장 초기화)를 고려해야 하며, 그래도 해결되지 않는다면 하드 디스크나 네트워크/Wi-Fi 카드 등의 하드웨어 오류 여부를 점검받으시기 바랍니다.