반응형

이 주제에서는, 여러개의 NIC에 각각 IP주소를 설정하는 것과, 하나의 NIC에 여러개의 IP주소를 설정하는것을 알아본다.

먼저 서버에 어떤 Network Interface가 있는지 확인해보자.

Case1. 복수개의 물리적인 Network Interface가 있는 경우:

여러개의 물리적인 Network Interface를 사용할 수 있는 경우라면, 
eth0과 eth1에 각각 IP주소 한개씩을 설정할 수 있다.

 

Network Interface 확인하기

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr D4:AE:52:82:22:8D
          inet addr:192.168.0.70  Bcast:192.168.0.95  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:755405214 errors:0 dropped:0 overruns:0 frame:0
          TX packets:435394530 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:76448404243 (71.1 GiB)  TX bytes:54217830504 (50.4 GiB)

eth1      Link encap:Ethernet  HWaddr D4:AE:52:82:22:8E
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:593638846 errors:0 dropped:0 overruns:0 frame:0
          TX packets:593638846 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:64571677188 (60.1 GiB)  TX bytes:64571677188 (60.1 GiB)
 
$

 

 

아래 그림과 같이 서버에 복수개 NIC (Network Interface card)가 있는 경우,
위 $ ifconfig -a 명령에서와 같이 여러개의 interface 이름이 나타난다.
 
'lo'는 local loopback interface라고 부르며, 모든 서버에 기본적으로 포함되어있다.
 
'eno0, eno1'라고 표시된다면, server main-board에 기본적으로 포함되어 있는 interface 이름으로,
embedded NIC (onboard Network Interface Card) 을 의미한다.

 


'eth0', 'eth1', 'eth2', ... 와 같이 표시되는 것은 추가 랜카드를 꽂은 경우의 interface 이름이된다.

최근에는 'enp0s10' 의 형태로 slot name이 interface 이름으로 표시된다.

 

eth1 에 IP 설정하기

eth0에 IP 설정하는 것과 같은 방법으로 eth1의 IP를 설정하면 된다.

먼저, 현재 설정된 네트워크 정보를 확인해보자.

$ ifconfig -a
$ cat /etc/sysconf/network
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr D4:AE:52:82:22:8D
          inet addr:192.168.0.70  Bcast:192.168.0.95  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:755405214 errors:0 dropped:0 overruns:0 frame:0
          TX packets:435394530 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:76448404243 (71.1 GiB)  TX bytes:54217830504 (50.4 GiB)

eth1      Link encap:Ethernet  HWaddr D4:AE:52:82:22:8E
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:593638846 errors:0 dropped:0 overruns:0 frame:0
          TX packets:593638846 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:64571677188 (60.1 GiB)  TX bytes:64571677188 (60.1 GiB)
 
$

$ cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=myserver
GATEWAY=192.168.0.65
$

$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.0.95
HWADDR=d4:ae:52:82:22:8d
IPADDR=192.168.0.70
NETMASK=255.255.255.224
NETWORK=192.168.0.64
ONBOOT=yes
$

$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=d4:ae:52:82:22:8e
ONBOOT=no
$

 

eth0의 설정을 참고하여, 새IP 192.168.0.88 을 eth1에 할당하는 것을 가정하여 보자.

$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
BROADCAST=192.168.0.95
HWADDR=d4:ae:52:82:22:8e
IPADDR=192.168.0.80
NETMASK=255.255.255.224
NETWORK=192.168.0.64
ONBOOT=yes
$

 

Case2. 한개의 물리적인 Network Interface만 있는 경우, 복수개 IP 주소 설정하기:

 

위 경우와 달리, 물리적인 Network Interface가 한개뿐이거나, 하나의 물리적 Interface에 여러개의 IP주소를 설정해야하는 경우라면 아래의 방법을 사용할 수 있다.

eth0 라는 물리적 Network Interface에 IP주소가 한개 등록되어 있다고 가정하고,
동일 네트워크의 여러개 IP를 추가해보자.

현재 eth0 IP주소는, 192.168.0.70 이고, 새로 추가할 IP주소는 192.168.0.71, 192.168.0.72 라고 한다면,

절차는,
network-scripts 디렉토리에서 ifcfg-eth0 의 설정을 복사하여, ifcfg-eth0:0과 ifcfg-eth0:1 이라는 하위의 가상의 interface를 만들고, 여기에 새로 추가할 IP주소를 등록한다.

먼저 network-scripts 디렉토리로 이동하여, 설정파일을 여러개 복사한다.

$ cd /etc/sysconfig/network-scripts
$ sudo cp ifcfg-eth0 ifcfg-eth0:0
$ sudo cp ifcfg-eth0 ifcfg-eth0:1

$ ls
ifcfg-eth0
ifcfg-eth0:0
ifcfg-eth0:1
$

동일 네트워크의 IP주소 대역을 사용하므로, 새 설정파일들에서 IP주소만 변경해준다.
단, HWADDR은 삭제한다.

$ sudo vi ifcfg-eth0:0
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.95
IPADDR=192.168.0.71
NETMASK=255.255.255.224
NETWORK=192.168.0.64
ONBOOT=yes
$

$ sudo vi ifcfg-eth0:1
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.95
IPADDR=192.168.0.72
NETMASK=255.255.255.224
NETWORK=192.168.0.64
ONBOOT=yes
$

 

설정을 마쳤다면 네트워크를 재시작하거나 재부팅하면 새IP들이 적용된다

$ sudo /etc/rc.d/init.d/network restart
Shuuting down interfaceeth0: [OK]
...

끝으로, ifconfig -a 명령으로 적용된 Network interface와 IP주소를 확인해본다

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr D4:AE:52:82:22:8D
          inet addr:192.168.0.70  Bcast:192.168.0.95  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:755405214 errors:0 dropped:0 overruns:0 frame:0
          TX packets:435394530 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:76448404243 (71.1 GiB)  TX bytes:54217830504 (50.4 GiB)
 
eth0:0    Link encap:Ethernet  HWaddr D4:AE:52:82:22:8D
          inet addr:192.168.0.71  Bcast:192.168.0.95  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0 B)  TX bytes:0 (0 B)
 
eth0:1    Link encap:Ethernet  HWaddr D4:AE:52:82:22:8D
          inet addr:192.168.0.72  Bcast:192.168.0.95  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0 B)  TX bytes:0 (0 B)

 lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:593638846 errors:0 dropped:0 overruns:0 frame:0
          TX packets:593638846 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:64571677188 (60.1 GiB)  TX bytes:64571677188 (60.1 GiB)
 

 

 

 

 

반응형

+ Recent posts