본문으로 건너뛰기

Linux에서 정적 네트워크 구성하기

Connectivity Gateway를 설정할 때, Gateway 장치가 SDA Console에 등록된 PLC와 통신할 수 있어야 합니다. 다음은 네트워크 스위치에 유선으로 연결된 Raspberry Pi와, 동일한 스위치에 연결된 두 개의 PLC가 있는 시나리오를 보여줍니다.

네트워크 스위치를 통해 동일한 서브넷 내의 두 PLC에 연결된 Raspberry Pi

PLC 1의 IP는 192.168.0.1이고 PLC 2의 IP는 192.168.0.5이므로, 두 장치가 모두 192.168.0.0/24 네트워크에 있다고 볼 수 있습니다. 따라서 Raspberry Pi도 동일한 네트워크에 참여하여 패킷을 PLC로 올바르게 라우팅해야 합니다. WLAN이 192.168.50.0/24이므로 라우팅 충돌은 발생하지 않습니다.

정보

사전 요구 사항

동작을 위해 두 개의 모듈만 사용하며, 이 모듈들은 일반적으로 새로 설치한 Raspberry Pi OS에 기본적으로 포함되어 있습니다. 다만, 다음 명령을 실행하여 반드시 확인하십시오:

sudo apt update && sudo apt install nano ifupdown

해결 방법: Linux 네트워크 인터페이스 구성을 사용하여 Raspberry Pi의 eth0 인터페이스에 정적 IP 주소 192.168.0.2/24를 설정합니다. 이를 위해 아래 내용으로 인터페이스 파일을 생성하십시오.

sudo nano /etc/network/interfaces.d/eth0
auto eth0
iface eth0 inet static
address 192.168.0.2/24

설명:

  • auto eth0은 시스템 초기화 시 네트워크 인터페이스를 활성화하도록 지시하여, Raspberry Pi의 전원이 켜지는 즉시 해당 인터페이스가 활성화됩니다.
  • iface eth0은 구성 대상 네트워크 인터페이스를 지정합니다.
  • inet은 주소 패밀리로 IPv4를 사용합니다.
  • static은 eth0 인터페이스에 선택한 IP를 정적으로 구성하므로, DHCP로부터 IP를 받지 않습니다.
  • address 192.168.0.2/24는 해당 이더넷 포트에서 Pi의 IP로 192.168.0.2를 설정하고, 동시에 해당 포트에 192.168.0.0/24 네트워크를 설정합니다. 그 결과, 해당 서브넷 내의 모든 패킷은 eth0 인터페이스로 전송됩니다.

이제 다음 명령을 실행하여 네트워크 스택이 인터페이스 구성을 다시 로드하도록 해야 합니다:

sudo ip addr flush eth0 && sudo systemctl restart networking

또 다른 방법은 Raspberry Pi를 재부팅하는 것입니다.

추가: 서로 다른 네트워크의 PLC에 연결하기​

세 번째 PLC를 추가하는 더 복잡한 시나리오를 가정해 보겠습니다. 단, 이 새로운 PLC는 다른 두 PLC와 일치하지 않는 다른 네트워크 10.0.0.0/24에 있습니다.

초록색으로 표시된, 다른 네트워크에 있는 세 번째 PLC 추가

다행히 해결 방법은 매우 간단합니다. Raspberry Pi의 동일한 eth0 인터페이스에 대해 해당 네트워크 내의 추가 IP를 지정하는 블록을 하나 더 추가하면 됩니다. 아래에서는 Raspberry Pi에 IP 10.0.0.2를 선택했습니다.

sudo nano /etc/network/interfaces.d/eth0
auto eth0
iface eth0 inet static
address 192.168.0.2/24

iface eth0 inet static
address 10.0.0.2/24
sudo ip addr flush eth0 && sudo systemctl restart networking
정보

이 페이지에 더 많은 예시가 필요하시다면 문의해 주십시오.