DHCP
Dynamic Host Configuration Protocol의 약자로, 호스트가 부여할 수 있는 IP 주소와 TCP/IP 프로토콜의 설정들을 클라이언트의 요청에 따라 자동으로 부여해주는 프로토콜이다. 보통 라우터에서 서버가 돌아가면서 DHCP를 통해 연결된 기기들이 IP 주소를 유동적으로 부여받게 된다.(공유기도 라우터의 일종이기 때문에 연결된 기기들이 자동으로 IP 주소를 부여받게 된다.)
•
임대
유동 IP 주소를 부여받는 것. IP를 할당해 줄 때 일정 기간을 정해두고 부여하기 때문에 임대라고 부른다
•
갱신
임대받은 클라이언트가 계속해서 연결을 필요로 할 때 임대 기간마다 서버에 반환을 하고 다시 임대 받는 것은 굉장히 비효율적이기 때문에 갱신 요청을 보내서 임대 기간을 갱신할 수 있다.
•
반환
임대 기간이 끝났거나 IP 사용이 종료된 경우 반환을 통해 서버가 다른 클라이언트에게 해당 IP를 부여할 수 있도록 반환한다.
•
DHCP의 장점
◦
각각의 기기마다 수동으로 IP를 부여하게 된다면 부여 가능한, 이미 부여한 IP 목록을 항상 체크 해야함
◦
실수로 잘못된 IP를 부여하거나 동일한 IP를 여러 기기에 부여한 경우에 통신이 불가능 할 수 있음
◦
DHCP 서버를 이용하면 자동으로 부여 가능한 목록 내에서 충돌이 일어나지 않도록 관리를 해주고 임대 기간을 통해 사용되지 않는 IP를 자동으로 회수해주어서 효율적인 관리가 가능함
•
DHCP의 단점
◦
DHCP 서버가 다운 되었을 경우 할당이 제대로 이루어 지지 않아 문제가 생길 수 있음
◦
외부에서 접속을 해야하는 경우에 적절한 시기에 갱신이 이루어지지 않아서 반환이 된다면 IP 주소가 변경이 되어 접속이 불가능할 수 있음
IP 주소
Internet Protocol로 규약되어 있는 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해서 사용하는 특수한 번호를 나타낸다. 고정된 IP 주소를 할당받아 사용하거나 DHCP를 이용하여 동적으로 할당받아 사용한다. 일반적으로 사용되는 IP 주소는 IPv4 주소(IP version 4 주소)로 8비트(0~255)씩 4개의 주소로 0.0.0.0부터 255.255.255.255까지 있다. 127.0.0.1은 localhost(로컬 호스트)로 자기 자신을 가리키는 것처럼 중간의 일부 번호들은 특별한 용도를 위해 예약되어 있다. IP의 새로운 버전인 IPv6 주소는 모든 단말에 주소를 부여하기에 32비트로는 부족해짐에 따라 주소 길이를 128비트로 늘리고, 두 자리 16진수 여덟 개를 쓰고 각각을 : 기호로 구분하여 사용하는 주소 체계이다.
•
클래스와 서브넷마스크
◦
네트워크의 한정된 자원을 효율적으로 사용하기 위해 사설 IP 주소에서 네트워크 영역과 호스트 영역을 분리하여 구분하는 서브넷팅을 위한 마스킹 주소가 서브넷 마스크이다. 네트워크 영역과 호스트 영역의 구분에 따라 A, B, C 클래스로 구분이 되는데, 구분은 네트워크 영역을 a, 호스트 영역을 b로 표시하면 IP 주소와 서브넷 마스크는 아래와 같다. IP 주소에 서브넷마스크를 bit and 연산을 하게 되면 네트워크 영역의 주소가 남게되고 일반적으로 IP 주소 뒤에 클래스와 서브넷마스크에 따라 8, 16, 24로 표기한다. 호스트 영역을 넓게 사용할수록 사용자가 유동적으로 사용할 수 있는 폭이 넓어지므로 A 클래스가 가장 좋지만 할당할 수 있는 수는 가장 적다.
◦
A 클래스
IP 주소 : aaa.bbb.bbb.bbb/8 서브넷마스크 : 255.0.0.0
◦
B 클래스
IP 주소 : aaa.aaa.bbb.bbb/16 서브넷마스크 : 255.255.0.0
◦
C 클래스
IP 주소 : aaa.aaa.aaa.bbb/24 서브넷마스크 : 255.255.255.0
•
고정 IP vs 유동 IP
◦
고정 IP
한 번 부여되면 IP를 반납하기 전까지 다른 기기에 부여하는 것이 불가능한 IP 주소이다.
◦
유동 IP
장비에 고정적으로 IP를 부여하지 않고 컴퓨터를 사용할 때 남아 있는 IP 중에서 돌아가면서 부여하는 IP 주소이다.
◦
유동 IP는 여러 사용자가 더 적은 IP 주소를 돌려가며 사용할 수 있다는 점에서 할당 받는 IP 주소의 수를 줄여 금전적으로나 네트워크 상의 효율적으로 좋다는 장점이 있지만, 특정 IP 주소를 가진 사람만 들어올 수 있도록 규칙을 만들어 놓아야 보안 상으로 더 안전해지기 때문에 외부에 공개하는 IP 주소는 고정 IP 주소를 필요로 한다.
•
공인 IP vs 사설 IP
◦
공인 IP
인터넷 사용자의 로컬 네트워크를 식별하기 위해 ISP(인터넷 서비스 공급자)가 제공하는 IP 주소이다. 공용 IP 주소라고도 불리며 외부에 공개되어 있는 IP 주소이다. 공인 IP 주소가 외부에 공개되어 있기에 인터넷에 연결된 다른 PC로부터의 접근이 가능하다. 따라서 공인 IP 주소를 사용하는 경우에는 방화벽 등의 보안 프로그램을 설치할 필요가 있다.
◦
사설 IP
일반 가정이나 회사 내 등에 할당된 네트워크의 IP 주소이며, 로컬 IP, 가상 IP라고도 한다. IPv4의 주소부족으로 인해 서브넷팅된 IP이기 때문에 라우터에 의해 로컬 네트워크상의 PC 나 장치에 할당된다. 위의 IP 주소 클래스와 서브넷마스크는 사설 IP 주소에 적용되는 기준이다. 사설 IP 주소만으로는 인터넷에 직접 연결할 수 없다. 라우터를 통해 1개의 공인(Public) IP 주소만 할당하고, 라우터에 연결된 개인 PC는 사설(Private) IP 주소를 각각 할당 받아 인터넷에 접속할 수 있게 된다.
Linux에서 고정 IP 설정하기
ubuntu, debian에서는 네트워크 설정을 /etc/network/interfaces에서 바꾸어 줄 수 있는데, sudo vim /etc/network/interfaces로 네트워크 설정에 들어가서 아래와 같이 사용하고자 하는 고정 IP / 유동 IP에 맞춰 작성하면 된다.
•
고정 IP 설정
# This file describes the network interfaces available on your system# and how to activate them. For more information, see interfaces(5).# The loopback network interfaceauto lo
iface lo inet loopback
# The primary network interfaceauto eth0
auto eth0
iface eth0 inet dhcp
Plain Text
복사
•
유동 IP 설정
# This file describes the network interfaces available on your system# and how to activate them. For more information, see interfaces(5).# The loopback network interfaceauto lo
iface lo inet loopback
# The primary network interfaceauto eth0
auto eth0
iface eth0 inet static
address 192.168.0.123
netmask 255.255.255.0
gateway 192.168.0.1
Plain Text
복사
•
용어 정리
◦
auto
부팅시에 네트워크 해당 인터페이스를 이더넷 카드 장치에 자동으로 올리게 설정 한다. ifup 명령어를 사용할때 -a 옵션을 더하여 auto 인터페이스를 활성화 시킬 수 있다. 이러한 ifup -a 명령어가 기본적으로 system을 부팅할때 사용하는 시스템 스크립트 내에 저장되어 있다. 여러개의 auto 인터페이스를 설정할 수 있고, 부팅시 순서대로 인터페이스 연결을 시도하게 된다.
◦
iface
논리적인 인터페이스이며 이는 물리적인 인터페이스에 어떤 인터페이스가 적용 되는지를 나타낸다. inet 은 TCP/IP를 나타내며, ipx는 IPX networking을 나타낸다. inet6는 IPv6를 지원하는 인터페이스 이다.
◦
address
고정 IP로 사용하고자 하는 IP 주소를 입력한다.
◦
netmask
사용할 사설 IP 주소의 클래스에 따른 서브넷마스크를 입력한다.
◦
gateway
고정 IP를 사용할 사설 네트워크 상의 라우터의 IP 주소를 입력한다.
◦
enp0s3
ethernet network peripheral # serial #의 표현으로 0번 bus 번호의 ethernet 카드에서 3번 슬롯이라는 의미이다.