다음을 통해 공유


네트워크를 통해 Azure Linux VM에 연결할 수 없음

적용 대상: ✔️ Linux VM

원래 KB 번호: 4010059

참고 항목

이 문서에서 참조하는 CentOS는 Linux 배포이며 EOL(수명 종료)에 도달합니다. 사용 및 계획을 적절하게 고려하세요. 자세한 내용은 CentOS 수명 종료 지침을 참조 하세요.

이 문서에서는 네트워크 오류로 인해 Azure Linux 가상 머신에 연결할 수 없는 문제를 해결합니다.

증상

Azure Linux VM(가상 머신)의 기본 인터페이스는 eth0입니다. eth0이 구성되지 않은 경우 다른 도구에서 VM이 실행 중임을 나타내는 경우에도 네트워크 연결을 통해 VM에 액세스할 수 없습니다.

문제가 발생하면 올바른 권한이 있는 SSH(Secure Shell) 연결이 VM에 연결하기 시작할 수 있습니다. 그러나 네트워크 문제로 인해 궁극적으로 VM에 액세스할 수 없습니다.

네트워킹 오류는 일반적으로 직렬 콘솔 로그에 기록됩니다. 특히 다음과 같은 오류가 표시 될 수 있습니다.

직렬 콘솔 로그의 오류

CentOS Linux 배포 오류

오류 1

Bringing up interface eth0:
Device eth0 does not seem to be present, delaying initialization.
[FAILED]

오류 2

Bringing up loopback interface: [ OK ]
Bringing up interface eth0: Device eth0 has different MAC address than expected, ignoring.
[FAILED]

오류 3

YYYY/MM/DD HH:MM:SS Discovered Windows Azure endpoint: ###.##.###.##
/usr/sbin/waagent:2275: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
Error('socket IOError ' + e.message + ' args: ' + repr(e.args))
YYYY/MM/DD HH:MM:SS ERROR:socket IOError args: (113, 'No route to host')

YYYY/MM/DD HH:MM:SS ERROR:socket IOError args: (113, 'No route to host')
Failed services in runlevel 3:network

오류 4

login: YYYY/MM/DD HH:MM:SS ERROR:timed out

YYYY/MM/DD HH:MM:SS ERROR:Traceback (most recent call last):
YYYY/MM/DD HH:MM:SS ERROR: File "/usr/sbin/waagent", line 3395, in DoDhcpWork
YYYY/MM/DD HH:MM:SS ERROR: receiveBuffer = sock.recv(1024)
YYYY/MM/DD HH:MM:SS ERROR:timeout: timed out
YYYY/MM/DD HH:MM:SS ERROR:
YYYY/MM/DD HH:MM:SS DoDhcpWork: Setting socket.timeout=10, entering recv
YYYY/MM/DD HH:MM:SS ERROR:timed out
YYYY/MM/DD HH:MM:SS ERROR:Traceback (most recent call last):
YYYY/MM/DD HH:MM:SS ERROR: File "/usr/sbin/waagent", line 3395, in DoDhcpWork
YYYY/MM/DD HH:MM:SS ERROR: receiveBuffer = sock.recv(1024)
YYYY/MM/DD HH:MM:SS ERROR:timeout: timed out

Customer changed the IP from DHCP to FIXED

SUSE Linux 배포 오류

Setting up (localfs) network interfaces:
 lo 
 lo IP address: 127.0.0.1/8 
 IP address: 127.0.0.2/8 
done eth4 
 No configuration found for eth4
unused Waiting for mandatory devices: eth0 
29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 

eth0 No interface found

Ubuntu

오류 1

cloud-init-nonet waiting 120 seconds for a network device.
cloud-init-nonet gave up waiting for a network device.
ci-info: lo : 1 127.0.0.1 255.0.0.0 .
ci-info: eth1 : 0 . . 00:0d:3a:10:6a:53
route_info failed
Waiting for network configuration...
Waiting up to 60 more seconds for network configuration...
Booting system without full network configuration...

오류 2

ci-info: | eth0 | False | . | . | 00:0d:3a:21:f9:ad |
ci-info: +--------+-------+-----------+-----------+-------------------+
ci-info: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Route info failed!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ i=eth0
+ x=0
+ ifdown eth0
ifdown: interface eth0 not configured
+ ifup eth0
Missing required variable: address
Missing required configuration variables for interface eth0/inet.
Failed to bring up eth0.
+ exit 0x\

해결

CentOS의 경우

아래의 ifcfg-eth0 파일에서 HWADDR 지시문을 제거합니다/etc/sysconfig/network-script.

SUSE Linux의 경우

아래의 eth0 또는 eth1 /etc/udev/rules.d에 대한 항목이 포함된 파일을 제거합니다.

Ubuntu의 경우

오류 1

이 오류는 aneth1 인터페이스가 eth0 대신 구성되었음을 나타냅니다. VM의 운영 체제에 udev에 대한 일부 업데이트가 설치되지 않은 경우 이 문제가 발생할 수 있습니다. 이 경우 udev 는 이전 네트워크 인터페이스를 잘못 저장합니다. VM의 크기를 조정하거나 이동하면 eth1에 할당되는 다른 MAC 주소를 받습니다.

참고 항목

직렬 로그에서 이미지의 버전을 확인할 수 있습니다. 2014년 1월에 릴리스된 아주 오래된 Ubuntu 커널(예: 3.2.0-58.88)이 발견되면 운영 체제가 업데이트되지 않았다는 것을 나타냅니다.

이 문제를 해결하려면 OS 디스크를 실행 중인 다른 VM에 연결한 다음 아래의 udev 규칙 파일을 /etc/udev/rules.d/70-persistent-net.rules삭제합니다.

나중에 이 문제를 방지하려면 VM에서 udev 패키지를 업데이트하는 것이 좋습니다. 예를 들어 다음 명령을 실행합니다.

sudo apt-get update
sudo apt-get install udev

오류 2

이 문제를 해결하려면 파일을 기본값으로 다시 설정 /etc/network/interfaces.d/eth0.cfg 하고 Azure DHCP에 IP 주소를 가져오도록 요청합니다. 그런 다음 캐시된 DHCP 설정이 포함된 폴더의 /var/lib/dhcp 파일을 제거합니다. 다음은 기본 eth0.cfg 파일의 예입니다.

# The primary network interface
auto eth0
iface eth0 inet dhcp

사용자 지정된 Linux 운영 체제에서 문제 해결

네트워킹 문제가 있는 VM에서 업로드된 VHD를 사용하는 경우 작업 갤러리 이미지를 기반으로 네트워크를 구성하려고 할 수 있습니다. 이렇게 하려면 문제가 있는 디스크를 데이터 디스크로 갤러리 VM에 연결한 다음 다음 명령을 실행합니다.

fdisk -l
df -h
mount /dev/sdc1 /temporary
df -h
cd /temporary/etc/udev/rules.d
ls -ltr
mv 70-persistent-net.rules /temporary/root/
cd ../../network

ls
mv interfaces interfaces.org
ls -ltr

작업 중인 VM에서 현재 폴더 파일로 복사합니다.

cp /etc/network/interfaces . 
cp -R /etc/network/interfaces
cp -R /etc/network/interfaces.d .
cp -R /etc/network/interfaces.dynamic.d .
ls -ltr
cd ..
cd
umount /mnt

갤러리 VM에 데이터 디스크를 연결하는 방법에 대한 자세한 내용은 Azure Portal에서 Windows VM에 데이터 디스크를 연결하는 방법을 참조하세요.

참조: 운영 체제용 네트워크 파일

네트워크 카드 구성

/etc/sysconfig/network-scripts/ifcfg-eth0 ..ifcfg-eth0:1 (Centos, Oracle)
/etc/sysconfig/network/ifcfg-eth0 (SuSE)
/etc/network/interfaces (Ubuntu)  

호스트 이름 구성

/etc/sysconfig/network (Centos , Oracle)
/etc/HOSTNAME (SuSE)
/etc/hostname (Ubuntu)  

DNS 구성 파일

/etc/resolv.conf
/etc/nsswitch.conf  

기본 게이트웨이에 대한 구성 파일

set in ifcfg-ethn or /etc/sysconfig/network
/etc/sysconfig/network/route (SuSE)
/etc/network/interfaces (Ubuntu)  

고정 경로

/etc/sysconfig/network-scripts/route-ethX (Centos, Oracle)
/etc/sysconfig/network/routes (SuSE)
/etc/network/interfaces (Ubuntu)  

방화벽 규칙

/etc/sysconfig/iptables (centos, Oracle)
/etc/sysconfig/SuSEfirewall2.d/services (SuSE)
/etc/ufw/ufw.conf (Ubuntu)

도움을 요청하십시오.

질문이 있거나 도움이 필요한 경우 지원 요청을 생성하거나Azure 커뮤니티 지원에 문의하세요. Azure 피드백 커뮤니티에 제품 피드백을 제출할 수도 있습니다.