ifconfig up 및 openvpn 서비스를 호출하는 스크립트는 작동하지 않지만 인터페이스가 이미 작동 중이면 작동합니다.

ifconfig up 및 openvpn 서비스를 호출하는 스크립트는 작동하지 않지만 인터페이스가 이미 작동 중이면 작동합니다.

이상한 문제에 직면했습니다. 다음과 같은 스크립트가 있습니다.

ifconfig eth0 up
sleep 2
systemctl start [email protected]

이 스크립트를 호출하기 전에 닫히면 eth0openvpn을 연결할 수 없습니다. journalctl반품

openvpn 제어 프로세스가 코드 종료 상태 = 1로 종료되어 클라이언트와의 OpenVPN 연결을 시작할 수 없습니다.

그러나 첫 번째 호출부터 동일한 스크립트를 두 번째로 다시 실행하면 eth0제대로 작동합니다. 무슨 일이 일어나고 있고 어떻게 해결하는지 아시나요?

답변1

아치는 이 구성에 적합합니다. 그러나 오래 전에 전환 ifconfig한 Arch에서는 이 기능을 사용해서는 안 됩니다 iproute2. 다음과 같이 하는 것이 더 좋습니다.

ip link set dev eth0 up
dhcpcd eth0

eth0(두 단계가 있고 어떤 단계가 실패했는지 정확히 알 수 있기 때문에 "더 좋습니다." 또한 비슷한 것이 없다고 확신 enp1s0하지만 이는 단지 작은 세부 사항일 뿐입니다.)


어쨌든 다음을 ifconfig eth0사용하여 유선 인터페이스를 시작할 수 있습니다.

systemctl start [email protected]

그런 다음 간단히 openvpn 서비스를 변경하고 먼저 서비스 파일을 복사할 수 있습니다.

cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/[email protected]

그런 다음 복사본(사본)을 다음과 같이 변경합니다.

[Unit]
...
[email protected]
[email protected]

(심지어 해킹은 아니지만,아치스 위키이는 권장됩니다. 해당 글이 해당 /usr/lib/systemd파일을 사용하고 있어서 논란이 되고 있어 먼저 복사해서 정답이 되도록 수정했습니다)


이제 VPN을 시작할 수 있습니다

systemctl start [email protected]

그리고 네트워크가 먼저 시작됩니다. 둘 다 중지하십시오.

systemctl stop [email protected]

관련 정보