Microsoft MVP성태의 닷넷 이야기
오류 유형: 966. Ubuntu - ping: connect: Network is unreachable [링크 복사], [링크+제목 복사],
조회: 2227
글쓴 사람
정성태 (seongtaejeong at gmail.com)
홈페이지
첨부 파일
 

Ubuntu - ping: connect: Network is unreachable

설치해 둔 Ubuntu 24.04 LTS에서 외부 접속이 안 됩니다. ^^;

$ ping www.naver.com
ping: connect: Network is unreachable

또 DNS 서버 설정이 풀렸나 싶었더니... 그건 또 아닙니다.

$ resolvectl status
Global
         Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
  resolv.conf mode: stub
Current DNS Server: 8.8.8.8
       DNS Servers: 8.8.8.8

...[생략]...

그러니까, IP를 직접 찍어도 연결이 안 됩니다.

$ ping 23.212.12.248
ping: connect: Network is unreachable

보니까, 라우팅 테이블이 꽤나 한산합니다. ^^;

$ ip route
192.168.100.0/24 dev eth0 proto kernel scope link src 192.168.100.50 

$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.100.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0

보통은 아래에서처럼 "default via ..." 같은 게 있어야 하는데,

// 정상적인 경우였다면,

$ ip route
default via 192.168.100.1 dev eth1 proto static metric 100 
192.168.100.0/24 dev eth1 proto kernel scope link src 192.168.100.25 metric 100 
...[생략]...

$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.100.1   0.0.0.0         UG        0 0          0 eth1
...[생략]...

그게 없는 것입니다. 즉, 오로지 192.168.100.x 대역의 IP에 대해서만 eth0 인터페이스를 통해 접속이 되고 있는 것입니다. 따라서 default gateway 설정만 추가하면,

$ sudo ip route add default via 192.168.100.1 dev eth0

// (2025-07-08 업데이트) 위의 명령어로 인한 변화는 재부팅 후 사라집니다.
// How to add persistent IP routes in Ubuntu 20.04 server
// ; https://askubuntu.com/questions/1345376/how-to-add-persistent-ip-routes-in-ubuntu-20-04-server 
// 1. edit config file in /etc/netplan
//    routes:
//    - to: default
//      via: 192.168.100.1
// 2. sudo netplan generate
// 3. sudo netplan apply

이후 정상적으로 ping이 됩니다.

$ ping www.microsoft.com
PING e13678.dscb.akamaiedge.net (23.40.45.184) 56(84) bytes of data.
64 bytes from a23-40-45-184.deploy.static.akamaitechnologies.com (23.40.45.184): icmp_seq=1 ttl=54 time=3.29 ms
64 bytes from a23-40-45-184.deploy.static.akamaitechnologies.com (23.40.45.184): icmp_seq=2 ttl=54 time=3.08 ms
...[생략]...




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







[최초 등록일: ]
[최종 수정일: 7/8/2025]

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

비밀번호

댓글 작성자
 




... 61  62  63  64  65  66  67  68  69  70  71  72  73  74  [75]  ...
NoWriterDateCnt.TitleFile(s)
12138정성태2/9/202027059.NET Framework: 885. C# - 닷넷 응용 프로그램에서 SQLite 사용 [6]파일 다운로드1
12137정성태2/9/202018851오류 유형: 592. [AhnLab] 경고 - 디버거 실행을 탐지했습니다.
12136정성태2/6/202020719Windows: 168. Windows + S(또는 Q)로 뜨는 작업 표시줄의 검색 바가 동작하지 않는 경우
12135정성태2/6/202026554개발 환경 구성: 468. Nuget 패키지의 로컬 보관 폴더를 옮기는 방법 [2]
12134정성태2/5/202023657.NET Framework: 884. eBEST XingAPI의 C# 래퍼 버전 - XingAPINet Nuget 패키지 [5]파일 다운로드1
12133정성태2/5/202021534디버깅 기술: 161. Windbg 환경에서 확인해 본 .NET 메서드 JIT 컴파일 전과 후 - 두 번째 이야기
12132정성태1/28/202024537.NET Framework: 883. C#으로 구현하는 Win32 API 후킹(예: Sleep 호출 가로채기) [1]파일 다운로드1
12131정성태1/27/202023401개발 환경 구성: 467. LocaleEmulator를 이용해 유니코드를 지원하지 않는(한글이 깨지는) 프로그램을 실행하는 방법 [1]
12130정성태1/26/202021171VS.NET IDE: 142. Visual Studio에서 windbg의 "Open Executable..."처럼 EXE를 직접 열어 디버깅을 시작하는 방법
12129정성태1/26/202027774.NET Framework: 882. C# - 키움 Open API+ 사용 시 Registry 등록 없이 KHOpenAPI.ocx 사용하는 방법 [3]
12128정성태1/26/202021846오류 유형: 591. The code execution cannot proceed because mfc100.dll was not found. Reinstalling the program may fix this problem.
12127정성태1/25/202019295.NET Framework: 881. C# DLL에서 제공하는 Win32 export 함수의 내부 동작 방식(VT Fix up Table)파일 다운로드1
12126정성태1/25/202021866.NET Framework: 880. C# - PE 파일로부터 IMAGE_COR20_HEADER 및 VTableFixups 테이블 분석파일 다운로드1
12125정성태1/24/202019691VS.NET IDE: 141. IDE0019 - Use pattern matching
12124정성태1/23/202021375VS.NET IDE: 140. IDE1006 - Naming rule violation: These words must begin with upper case characters: ...
12123정성태1/23/202022632웹: 39. Google Analytics - gtag 함수를 이용해 페이지 URL 수정 및 별도의 이벤트 생성 방법 [2]
12122정성태1/20/202019165.NET Framework: 879. C/C++의 UNREFERENCED_PARAMETER 매크로를 C#에서 우회하는 방법(IDE0060 - Remove unused parameter '...')파일 다운로드1
12121정성태1/20/202018121VS.NET IDE: 139. Visual Studio - Error List: "Could not find schema information for the ..."파일 다운로드1
12120정성태1/19/202022633.NET Framework: 878. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 네 번째 이야기(IL 코드로 직접 구현)파일 다운로드1
12119정성태1/17/202022794디버깅 기술: 160. Windbg 확장 DLL 만들기 (3) - C#으로 만드는 방법
12118정성태1/17/202023914개발 환경 구성: 466. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 세 번째 이야기 [1]
12117정성태1/15/202022149디버깅 기술: 159. C# - 디버깅 중인 프로세스를 강제로 다른 디버거에서 연결하는 방법파일 다운로드1
12116정성태1/15/202023402디버깅 기술: 158. Visual Studio로 디버깅 시 sos.dll 확장 명령어를 (비롯한 windbg의 다양한 기능을) 수행하는 방법
12115정성태1/14/202023475디버깅 기술: 157. C# - PEB.ProcessHeap을 이용해 디버깅 중인지 확인하는 방법파일 다운로드1
12114정성태1/13/202024324디버깅 기술: 156. C# - PDB 파일로부터 심벌(Symbol) 및 타입(Type) 정보 열거 [1]파일 다운로드3
12113정성태1/12/202024575오류 유형: 590. Visual C++ 빌드 오류 - fatal error LNK1104: cannot open file 'atls.lib' [1]
... 61  62  63  64  65  66  67  68  69  70  71  72  73  74  [75]  ...