인터넷을 통해 깨울 수 있도록 CentOS 서버에 Wake on LAN을 설정하고 있습니다. 서버에 고정 IP 주소를 설정하고, 라우터의 IP 주소를 유지하고, 서버의 IP 및 MAC 주소에 대한 고정 ARP 항목을 만들었습니다.
문제는 내 서버가 외부 네트워크에 활성 요청을 하지 않으면 몇 분 후에 SSH, 핑 등을 통해 로컬 네트워크의 서버에 연결할 수 없다는 것입니다. 그리고 서버 라우터의 정적 ARP 항목은 삭제 후 즉시 접근할 수 있습니다.
내 서버에서 웹사이트(예: google.com)를 계속 "핑"하면 정적 ARP 항목 바인딩 여부에 관계없이 서버에 항상 연결할 수 있습니다. 라우터에서 고정 ARP 항목을 제거했으며 내 서버가 웹 사이트를 "핑"하면 라우터의 활성 ARP 클라이언트 페이지에서 내 서버의 IP와 MAC를 찾을 수 있습니다. 서버를 유휴 상태로 두고 아무것도 하지 않으면 몇 분 후에 라우터의 활성 ARP 클라이언트 페이지에서 내 서버 항목이 사라집니다. 또한 라우터에서 ARP 바인딩 항목을 활성화하지 않아도 내 서버에 계속 액세스할 수 있습니다.
내가 뭘 잘못했나요? ARP 바인딩 항목을 수천 번 확인했는데 잘못된 IP 주소와 MAC 주소를 입력하지 않았음을 확신합니다.
CentOS 7을 사용하고 있으며 네트워크 설정 파일은 다음과 같습니다.
TYPE=Ethernet
BOOTPROTO=static
# ====== static ip setup =======
IPADDR=192.168.10.100
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=192.168.10.1
NM_CONTROLLED=no
# ==============================
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0
UUID=869753b9-240b-445b-5412-98d88dff542a
DEVICE=enp0
ONBOOT=yes
ethtool enp1s0
다음을 표시합니다.
[root@192 network-scripts]# ethtool enp1s0
Settings for enp1s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes