다섯 번의 Arch Linux 설치 실패 후 두 번 올바르게 설치했습니다. 처음으로 네트워크가 제대로 작동했고 SSH를 통해 Arch Linux를 설치하기도 했습니다.
Live CD 대신 설치된 시스템에서 부팅한 후 네트워크에 연결할 수 없으며 무엇이든(라우터 포함) ping을 시도하면 다음 메시지가 나타납니다.
연결: 네트워크에 액세스할 수 없습니다.
인터넷의 어떤 방법으로도 문제가 해결되지 않는 것 같아서 Arch를 다시 설치해 보았습니다. 설치 후 동일한 문제에 직면했습니다.
시간이 초과되었기 때문에 eth0을 시작할 수 없는 것 같습니다.
답변1
내가 직면하고 있는 문제는 eth0
(내가 아는 한) 아무것도 없다는 것입니다. 명령을 실행 ip link
하면 인터페이스가 출력됩니다. 이 인터페이스가 없습니다 eth0
. 반대로 나는 enp1s8
.
cd /etc/netctl
저는 static을 사용하고 있으므로 then을 사용하여 샘플 구성 파일을 복사했습니다 cp examples/ethernet-static my-network
. 그 후 인터페이스 my-network
를 사용하여 편집 nano my-network
하고 인터페이스를 eth0
( en1s8
또는 어댑터가 무엇이든 ip link
)로 변경했습니다. 마지막으로 시작 시 해당 구성 파일을 사용하도록 했습니다 netctl enable my-network
.
이 프로필을 활성화하면 부팅 시 시작되지만 시스템을 다시 시작하지 않고 실행하면 netctl start my-network
즉시 초기화됩니다.
저는 공식 Arch Linux 포럼에서 도움을 받을 수 있었습니다. 제 스레드를 확인해 보세요.거기.
답변2
Archlinux에서는 설치 프로그램이 자동으로 연결되지 않으면 dhcpcd를 시도해 보십시오. 이것은 설치 후 그 자리에서 저에게 효과적이었습니다. 명령으로 "dhcpcd"를 입력하고 몇 초 후에 "ip Route" 또는 "ping 8.8.8.8"을 입력하여 작동하는지 확인하세요. 나는 이러한 inet 및 inet6 주소가 얼마나 빨리 나타나는지 확인하기 위해 "watch ip address"를 사용하기도 했습니다.
dhcpcd를 사용하는 대신 다음 명령을 사용하여 처음부터 연결할 수도 있습니다.
modprobe e1000e
ip link set dev eth0 up
ip address add 192.168.0.16/24 dev eth0
ip route add 192.168.0.0/24 dev eth0
ip route add default via 192.168.0.1
modinfo는 e1000e가 "네트워크 드라이버"라고 말합니다. 이 모듈을 로드하면 eth0 링크가 생성됩니다(아니요, /dev에서 찾지 마세요). "ip" 명령은 링크를 활성화하고 주소를 선택하고 로컬 영역(서브넷)을 정의한 다음 기본 게이트웨이를 정의합니다. 나는 이것을 테스트하는 데 꽤 많은 시간을 보냈습니다(IP 링크 도움말, IP 주소 도움말, IP 경로 도움말...).
따라서 이것은 암시적이지만 "dhcpcd" 입력이 더 빠르고 아마도 더 강력할 것입니다. "dhcpcd -x"를 사용하면 깔끔하게 중지할 수 있습니다.
/etc/pacman.d/에 작동하는 핑과 미러 목록이 있으면 pacman 또는 pacstrap에 필요한 모든 것이 있습니다.
예, eth0의 이름을 enoxxx로 바꾸는 커널 메시지를 보았으므로 먼저 "ip link"를 사용하여 systemd가 어떤 인터페이스를 설정했는지 확인해야 합니다. 여기서 발생합니다:
[ 3.052354] e1000e 0000:00:1f.6 eth0: (PCI Express:2.5GT/s:Width x1) 94:c6:91:a5:39:b8
[ 3.052360] e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection
[ 3.052445] e1000e 0000:00:1f.6 eth0: MAC: 13, PHY: 12, PBA No: FFFFFF-0FF
[ 3.055917] e1000e 0000:00:1f.6 eno1: renamed from eth0
내 주소의 .16은 임의의 (수신자 부담) 번호이며 192.168.0.1은 항상 게이트웨이여야 합니다. 운이 좋을 수도 있지만 좋은 소식은 systemd 및 inet6에서 수정할 수 있다는 것입니다. 그래도 netctl을 시도해 보겠습니다.
이제 systemd를 사용하여 dhcpcd를 부팅하고 시작했습니다. "eno1"에서 주소 0.15와 세 개의 inet6 주소를 얻었지만 그 외에 결과는 위의 "ip" 해킹과 정확히 동일했습니다.
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 94:c6:91:a5:39:b8 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.15/24 brd 192.168.0.255 scope global noprefixroute eno1
valid_lft forever preferred_lft forever
inet6 2a05:41c0:12:bf00::2/128 scope global dynamic noprefixroute
valid_lft 2559430sec preferred_lft 572230sec
inet6 2a05:41c0:12:bf00:f51e:97c1:de6f:6f49/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 2591994sec preferred_lft 604794sec
inet6 fe80::47cf:a2e4:af0b:b7cd/64 scope link
valid_lft forever preferred_lft forever
default via 192.168.0.1 dev eno1 proto dhcp src 192.168.0.15 metric 203
192.168.0.0/24 dev eno1 proto dhcp scope link src 192.168.0.15 metric 203
답변3
연결할 수 없는 네트워크는 네트워크에 대한 경로가 없음을 의미합니다. 로컬 라우터에 ping조차 할 수 없다면 IP 주소가 없거나 네트워크 인터페이스가 다운된 것입니다.
netctl
네트워크 인터페이스 관리를 위한 Arch의 표준 유틸리티입니다. 설정(또는 다른 설정)하지 않은 경우 네트워크가 없습니다. DHCP도 아닙니다.
답변4
ArchLinux의 네트워크 설정은 ArchLinux 위키에 자세히 설명되어 있습니다:https://wiki.archlinux.org/index.php/Netctl
가장 많이 투표된 답변에 대한 중요한 설명 - 재부팅이 필요하지 않습니다. 네트워크 인터페이스만 존재하고 /etc/netcl의 구성 파일에 올바른 인터페이스 이름과 구성이 사용된 경우(예제 복사본 이름을 mynet1로 지정)
netctl start mynet1
네트워크 프로필 mynet1이 시작되고 네트워크 라우팅이 작동합니다.
하지만
netclt enable mynet1
부팅할 때마다 시스템 서비스 관리자가 시스템 서비스를 시작할 수 있습니다. 즉, /etc/systemd/system/netc@[mynetprofilename].service 단위 파일에 단위 세부 정보(장치 바인딩 및 종속성)가 포함된 파일을 생성합니다.
또한 네트워크 구성 파일이 수정되면 netctl을 다시 활성화해야 합니다.