강좌 & 팁
이전 시간에 임베디드 리눅스 시스템을 개발하기 위해서는 최소한 한 대의 리눅스 시스템이 필요하다고 말씀 드렸습니다. 이제 리눅스를 설치해야 되는데, 설치하기에 앞서 네트워크 구성에 대해 간단히 알아 보도록 하겠습니다. 리눅스를 설치할 때에도 중간에 Gate IP와 IP를 입력해야 되는데, 과연 어떤 값을 입력해야 되는지 이해를 돕기로 하겠습니다.
내용의 이해를 돕기 위해 동영상을 준비했습니다. 자세히 작성하려고 욕심을 내다 보니 조그 길어져서 그냥 보기에는 지루하네요. 주제별로 3 부분으로 나누었습니다.
첫번째 동영상은 네트워크 구성에 대한 소개이다.
두번째 동영상은 공유기의 DHCP 기능과 활용에 대한 내용입니다.
세번째 동영상은 공유기 없이 HUB로만 구성하는 방법입니다.
주위의 말씀을 들어 보면 간혹 공유기 없이 PC와 임베디드 보드로만 개발환경을 구성하시는 분이 계십니다. 그러나 제 생각에는 공유기나 허브를 함께 사용하시기를 권합니다.
특히, 프로그래밍 중에 프로그램 작성만 하지 않고 인터넷 연결이 필요하므로 가급적이면 공유기 사용을 권하고 싶습니다. 때에 따라서는 회사 같은 경우 내게 할당된 LAN케이블이 하나라면 역시 허브를 사용하여 임베디드 보드와 연결하실 것을 권합니다. 임베디드 보드 한 대를 연결하시더라도 허브를 이용하십시오.
예로, 인터넷이 들어오고 공유기로 구성한 모습입니다.
집에서 학습하시는 경우에 공유기 없이 PC 한 대로 구성하고 내부에 VM-Ware와 같은 가상 PC 를 사용하시는 경우도 있습니다만 이 경우에도 공유기를 사용하십시오.
회사에서나 집에서 허브를 이용한다면 모든 장비를 허브에 연결합니다.
그러나 나에게 할당된 랜 케이블이 하나일 경우에는 허브를 이용하여 역시 개발에 관련된 시스템을 허브를 통해 연결합니다. 개발용 PC에 LAN케이블을 여러 개 설치하고 연결할 수 있으나 절대 권하고 싶지 않습니다.
공유기와 함께 구성되었을 경우를 예로 설명하겠습니다. 공유기를 구매하시면 대부분 설정된 공유기 IP로 웹브라우저를 이용하여 연결하신 후, 웹 페이지에서 세팅하실 것입니다.
이때 사용된 IP 주소를 이용하여 아래의 그림에 따라 IP를 할당하시면 되겠습니다. 보통 회사에서나 집에서 사용하는 네트워크 환경은 C 클래스이므로 IP 주소 중에 앞의 3 자리를 맞추시면 됩니다.
만일 구매하신 공유기의 IP가 192.168.0.1 이 아닐 192.168.10.1 이라면 역시 앞의 192.168.10.2, 192.168.10.3, 192.168.10.4, ... 식으로 지정하시면 되며, 만일 회사의 네트워크 IP가 192.168.50.XXX 대라서 불편하시면 공유기 설정화면에서 공유기의 IP를 192.168.10.50.1로 설정하시고 나머지 장비의 IP도 192.168.10.50.XXX로 설정하시면 되겠습니다.
여기서 공유기에 대해 한가지 더 알아 보도록 하겠습니다. 공유기를 사용해 보시면 아시겠지만 공유기에 PC를 여러 대 연결하고 네트워크를 구성해서 네트워크 드라이브를 서로 공유하고 인터넷도 각자의 PC에서 사용했음에도 지금껏 IP에 대해 신경쓰지 않고 사용하고 계실지 모르겠습니다.
즉, 각 PC의 시스템에 TCP/IP설정에서 "IP를 자동으로 설정"으로 설정해 놓고 사용하셔도 불편없이 사용하실 수 있습니다. 이렇게 IP설정에 신경쓰지 않고 사용할 수 있었던 것은 공유기에서 제공하는 DHCP 기능 때문입니다.
IP를 고정으로 설정되어 있지 않은 PC나 시스템은 부팅할 때, 네트워크 내에 있는 DHCP 서버로부터 사용 가능한 IP를 요청하게 됩니다. DHCP 서버는 네트워크 망에 아직 사용되지 않은 IP 주소를 구하고 요청한 PC 나 시스템에 전송해 주면, IP를 수령한 쪽은 그 IP를 이용하여 네트워크에 참여하게 됩니다.
이 DHCP서버 기능을 대부분의 공유기에 포함되어 있습니다. 그렇기 때문에 공유기를 이용하면 IP를 신경쓰지 않아도 편리하게 네트워크를 사용할 수 있었던 것입니다.
공정 IP의 편리함
그러나 DHCP로부터 IP를 구하는 문제점은 요청할 때 마다, 즉 PC나 시스템이 부팅될 때 마다 IP를 그때그때 새로 부여받기 때문에 특정 장비로 연결하기 위해서는 매번 그 장비의 IP를 확인해야 합니다. 물론 같은 IP를 부여 받을 수 있지만 없는 경우를 위해서라도 DHCP의 도움을 받지 않고 고정 IP를 사용하는 것이 좋겠습니다.
이런 이유로 리눅스 시스템과 임베디드 보드로 고정 IP를 192.168.0.3번부터 192.168.0.10번까지 차례로 지정해 주었습니다. 그러나 문제가 있습니다. 이렇게 3번부터 10번까지 지정한 장비가 모두 켜 있는 상태에서 DHCP가 활동하면 문제가 없는데 만일 어느 하나가 꺼져 있다면, 예로 5번이 꺼졌고 그래서 사용중이지 않은 상태에서 DHCP로 IP를 요청하는 시스템이 있다면, DHCP는 멍청하게 5번은 사용중이지 않은 IP로 판단하고, IP를 요구하는 시스템에 배정할 수 있습니다.
이 상태에서 원래 5번을 고정 IP로 사용하는, 즉 192.168.0.5 시스템이 켜지면, 이 시스템은 오로지 5번뿐이 모르기 때문에 DHCP로부터 할당 받은 시스템과 네트워크 충돌이 발생합니다.
그러므로 공유기에게 자동으로 생성하는 IP번호대를 지정해 주어야 하겠습니다. 즉, 고정 IP로 사용하는 번호도 특정 범위로 지정하고 공유기에는 이 범위를 밖의 범위를 지정해 줍니다. 공유기 설정에는 DHCP에 대한 설정이 반드시 있으므로 설정하시는데 어려움이 없으실 것입니다.
예로, 고정 아이피를 2번부터 99번까지 직접 지정해서 사용한다면 공유기의 DHCP설정에서 자동 IP구성 범위를 100에서 255로 설정하시면 되겠습니다.
Gateway
Gateway는 간단히 말씀드려서 인터넷과 직접 연결되어 있는 장비를 말합니다. 콩글리쉬로 말한다면 인터넷이 들어오는 문 역활을 하는 장비를 말하므로 즉, 공유기가 되겠습니다. 그러므로 공유기 IP를 게이트웨이 IP로 입력해 주시면 됩니다.
DNS 서버 IP
Linux 설치 중에 물어 보는 것 중에 하나가 DNS 서버 IP입니다. DNS 서버는 Domain Name Server의 약자로 문자로 구성된 웹 주소를 실제 시스템에 지정된 숫자로 된 IP 를 구하는 서버입니다. 인터넷 서비스를 제공하는 업체는 대부분 DNS서버를 제공합니다. 예로 한국통신은 168.126.63.1이고 하나로는 210.220.163.82 입니다. 그러나 공유기를 사용하신다면 공유기 IP를 입력하셔도 됩니다.