CentOS 7 "네트워크"서비스를 시작할 수 없습니다


23

"NetworkManager"서비스를 비활성화하고 제거한 후 CentOS 7 "네트워크"서비스를 시작할 수 없습니다. 네트워크 서비스 상태를 확인하면 다음 오류가 발생합니다.

#systemctl status network.service
network.service - LSB: Bring up/down networking
   Loaded: loaded (/etc/rc.d/init.d/network)
   Active: failed (Result: exit-code) since Fri 2015-01-16 22:30:46 GMT; 38s ago
  Process: 4857 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=1/FAILURE)

Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain systemd[1]: network.service: control process exited, code=exited status=1
Jan 16 22:30:46 localhost.localdomain systemd[1]: Failed to start LSB: Bring up/down networking.
Jan 16 22:30:46 localhost.localdomain systemd[1]: Unit network.service entered failed state.

이전 CenOS에서는 "NetworkManager"서비스에서 네트워크 서비스로 전환 할 때 아무런 문제가 없었습니다. 문제의 원인과 해결 방법에 대한 아이디어가 있습니까?

참고 : 네트워크 관리 서비스를 제거하기 위해 yum erase를 사용했습니다.

요청 된 추가 정보는 다음과 같습니다.

/etc/sysconfig/network-script/ifcfg-enp8s0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp8s0
UUID=453a07fe-1b07-4f29-bc32-f2168e50706a
ONBOOT=yes
HWADDR=XXXXXXXXXXX
MACADDR=XXXXXXXXXX
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

/etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

/etc/resolv.conf
; generated by /usr/sbin/dhclient-script
search customer.marples.midcity.lan
nameserver 10.241.128.1

평판이 낮아서 의견을 게시 할 수 없으므로이 답변을 의도하지 않은 답변으로 게시하고 있습니다. <br/> <br/> 다음을 게시 할 수 있습니까? <br/> <br/> /etc/sysconfig/network-script/ifcfg-eth0<br/> /etc/hosts<br/> /etc/resolv.conf<br/> <br/> 해당 특정 NIC에 대해 구성된 경로를 확인하고 싶을 수도 있습니다. (에서 발견 된 /etc/sysconfig/network-scripts/route-<interface>이 유사한 오류가 발생할 수 있기 때문에). <BR/> <BR/> 당신은 시도해 봤어 ifdown eth0하고 ifup eth0대신 systemctl (re)start network? 제거 당신에게 / 비활성화나요 Network Manager사용yum remove
MOSH 구덩이를

다시 공급해 주셔서 감사합니다. 위의 질문 정보를 업데이트했습니다. 예, yum erase를 사용하여 NetworkManager 서비스를 제거했습니다. ifdown eth0 및 ifup eth0을 시도하지 않았습니다. 네트워크 관리자 서비스를 제거하고 네트워크 서비스를 시작할 수 없어도 네트워크 연결이 여전히 작동하고 있습니다.
Gazel

당신이 HWADDR=XXXXXXXXXXX MACADDR=XXXXXXXXXX 당신의 인터페이스 설정한다. 동일한 것으로 보이므로 잘못된 것 같습니다. 내가 추천 한 것 중 하나를 시도하고 (구성 에서이 부분을 주석 처리하십시오) 다시 시작한 후 다시 시도하십시오. 이 CentOS 7 박스 SELinux가 적용됩니까? 이 시스템을 하드웨어 또는 가상 환경에서 실행하고 있습니까? hosts그리고 resolv.conf지금까지 좋아 보인다.
Mosh Pit

원래 NetworkManager의 GUI에서 MAC을 스푸핑했기 때문에 실제 HWADDR 외에도 가짜 MACADDR을 추가했기 때문에 이것이 존재합니다. MACADDR 라인을 제거해야합니까? SELinux 상태는 사용 가능으로 읽습니다. 하드웨어에서 실행 중입니다.
Gazel

댓글 달기 HWADDR및 / 또는 MACADDR을 꺼내는 MACADDR것으로 충분 하다고 생각 합니다. 전체 상자를 다시 시작하고 네트워크가 제대로 작동하는지 확인하십시오. IPv6또한를 사용하지 않는 경우 해당 쓰레기를 꺼내십시오. HWADDR을 사용하여 cat /sys/class/net/ens192/address올바르게 설정되었는지 확인할 수도 있습니다 .
Mosh Pit

답변:


30

Centos7.0에서 NetworkManager를 비활성화하면 dhcp 클라이언트가 NetworkManager에 대해 구성된 상태로 유지됩니다. 서비스가 시작될 RTNETLINK answers: File exists때 오류 메시지가 발생합니다 network.

오래된 dhclient프로세스에는 임대 기간이 만료되면 dhclientNetWorkManager에 도달 할 수 없으므로 IP 주소가 제거되므로 렌탈 이 만료되는 추가 "혜택"이 있습니다 .

당신 grep이 그것을 위해, 당신은 그것이 NetWorkManager 구성 파일을 가리키는 것을 볼 수 있습니다.

[root@host ~]# ps -ef | grep dhc
root      1865   792  0 Apr28 ?        00:00:00 /sbin/dhclient -d -sf \
 /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eno1.pid -lf\
 /var/lib/NetworkManager/dhclient-c96e56d3-a4c9-4a87-85ca-93dc0ca268f2-eno1.lease\
 -cf /var/lib/NetworkManager/dhclient-eno1.conf eno1

따라서 당신이 할 수있는 일은 죽이고 dhclient네트워크 서비스를 시작하는 것입니다.


예, dhclient를 죽이면 문제가 해결되었습니다. 감사합니다
MichaelZ

6
또한 언급 할만한 명성은 없지만 Hans의 답변을 지원하고 ifcfg 파일에서 bootproto를 "none"으로 변경해야한다고 덧붙였습니다. dhclient는 네트워킹을 다시 시작하려고 할 때만 호출되었으며 dhclient 프로세스를 종료해도 도움이되지 않았습니다. 다른 클라이언트가 대신 발생했기 때문입니다. ifcfg 파일을 수정하면 문제가 해결되었습니다.
onlyanegg

5

IP 충돌로 인해이 오류가 발생합니다. systemctl stop network다음을 시도하십시오 ifup eth0.


1

DNS에서 IP를 가져 오지 못하면 방금 찾은이 오류가 발생합니다. 실제로 네트워킹에 오류가 있으면이 오류가 발생합니다. 이것은 CentOS 7에서 문제가있는 것 같습니다.


1

이미 확인되었으므로이 오류는 네트워크를 설정하는 동안 IP 충돌, 라우팅 문제 등의 문제로 나타납니다.

게이트웨이 설정에서 봐 당신의 게이트웨이가 제대로 설정되어 확인과 사물들이 함께 할 필요가 무엇 /etc/syscofig/network과 각각 /etc/sysconfig/network-scripts/ifcfg-*중복 IP를 통해 설정 한 경로에 대해 살펴 /etc/sysconfig/network-scripts/route-*메모리 나에게 지금 모두 설정할 수 있습니다 권리 게이트웨이 역할을하는 경우 ifcfg-*route-*파일을. 따라서 중복 또는 겹침이 없는지 확인하십시오.


1

네트워크에 연결되지 않은 인터페이스를 수동으로 구성한 경우에도 마찬가지입니다.


1

나는 오늘 CentOS 7.2 복제 가상 머신에서 이것에 직면했다. 이것이 내가 고친 방법입니다.

systemctl disable NetworkManager
systemctl enable network

명령을 통해 인터페이스의 MAC 주소를 찾아서에 /sbin/ifconfig -a추가하십시오 /etc/sysconfig/network-scripts/ifcfg-<interface_name>. 첫 번째 인터페이스에 아래 명령을 사용할 수 있습니다.

nic_file=`ls /etc/sysconfig/network-scripts/ifcfg-e*`
ifconfig -a | grep ether | awk '{ print $2 }' | sed 's/.*/HWADDR=&/' >> ${nic_file}

그런 다음 reboot서버를 다시 시작하십시오.


0

네트워크를 중단시킬 수있는 다른 인터페이스가 없는지 네트워크 스크립트를 살펴보십시오.

ifconfig를 수행하고 인터페이스를 작성하십시오. 네트워크 스크립트의 파일과 비교하십시오. ifconfig의 인터페이스보다 네트워크 스크립트에 더 많은 파일이있는 경우 추가로 쓸모없는 파일을 삭제 한 다음 systemctl restart network를 수행 할 수 있습니다.


0

가상 서버를 복제 한 후이 오류가 발생하면 복제본에 새 하드웨어 주소 (MAC)가 제공되고 네트워크 어댑터 구성에 여전히 이전 하드웨어 주소가있었습니다.

라인은 다음과 같습니다. HWADDR = 00 : 00 : 00 : 00 : 00 : 00


0

이 문제가 발생 RTNETLINK answers: File exists하여 네트워크 관리자를 제거한 후 모든 네트워크 구성을 세 번 확인한 후에도 서버에서 계속 제공 됩니다.

IP가 다른 서버에 있고 서버가 ICMP를 필터링하므로 핑이없는 것으로 보입니다. 따라서 IP가 작동 중인지 테스트하기 위해 핑에 의존하지 마십시오!

시작할 때 네트워크 스크립트는이 명령을 실행합니다 (dev 및 ip 변경)

/sbin/arping -c 2 -w 3 -D -I eth0 10.196.132.206

mac 주소가이 IP와 연결되어 있고 네트워크 스크립트 ( ifup또는 systemctl start network)에 실패했음을 알려줍니다


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.