CentOS 7 ip 설정 명령어 [고정 IP, 임시 IP, ifconfig, ip addr]

반응형

리눅스 centos 7 고정 ip와 임시 ip 설정 방법에 대해서 살펴볼 건데요. 명령어가 생각보다 다양하게 존재합니다. 자신의 서버 환경에 맞되 가장 편한 방법으로 설정하시면 되겠습니다.

 

고정IP

 

# ① 고정 IP (static)

[root@Eloquence ~]# cd /etc/sysconfig/network-scripts/
[root@Eloquence network-scripts]# ls
ifcfg-enp0s3     ifdown-isdn    ifup-aliases  ifup-ppp
ifcfg-lo         ifdown-post    ifup-bnep     ifup-routes
ifdown           ifdown-ppp     ifup-eth      ifup-sit
ifdown-Team      ifdown-routes  ifup-ippp     ifup-tunnel
ifdown-TeamPort  ifdown-sit     ifup-ipv6     ifup-wireless
ifdown-bnep      ifdown-tunnel  ifup-isdn     init.ipv6-global
ifdown-eth       ifup           ifup-plip     network-functions
ifdown-ippp      ifup-Team      ifup-plusb    network-functions-ipv6
ifdown-ipv6      ifup-TeamPort  ifup-post

 


[root@Eloquence network-scripts]# vi ifcfg-enp0s3

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static  // static : 고정 ip    dhcp : 유동 ip
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=enp0s3
UUID=66a6ace5-58b2-409f-9c33-aae4d310f150
DEVICE=enp0s3
ONBOOT=yes   // 부팅 시 해당 파일 내용 적용 여부

IPADDR=192.168.56.100  // IP
NETMASK=255.255.255.0  // 서브넷 마스크

GATEWAY=192.168.56.1  // 게이트웨이
DNS=8.8.8.8  // DNS

 

 

[root@Eloquence network-scripts]# systemctl restart network
[root@Eloquence network-scripts]# ifconfig -a
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.56.100  netmask 255.255.255.0  broadcast 192.168.56.255
        ether 08:00:27:6e:d5:45  txqueuelen 1000  (Ethernet)
        RX packets 12762  bytes 808557 (789.6 KiB)
        RX errors 0  dropped 345  overruns 0  frame 0
        TX packets 678  bytes 69422 (67.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 32  bytes 2592 (2.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 32  bytes 2592 (2.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

# ② 고정 IP (static)

[root@Eloquence ~]# nmtui

Edit a connection 선택

 

 

IP를 넣을 네트워크 인터페이스 선택 (그림에선 VM으로 실습하는 상태고, 한 개 밖에 안 보이네요)

 

 

IPv4 CONFIGURATION <Automatic>   부분을  IPv4 CONFIGURATION <Manual>  로 변경한다.

 

 

Addresses : ip 입력

Gateway : 게이트웨이 입력

DNS servers : DNS 입력

 

<OK> 선택 후 빠져나오면 되겠습니다.

 

유동IP

 

# ① 유동 IP (dhcp)

[root@Eloquence ~]# cd /etc/sysconfig/network-scripts/ 
[root@Eloquence network-scripts]# ls 
ifcfg-enp0s3     ifdown-isdn    ifup-aliases  ifup-ppp 
ifcfg-lo         ifdown-post    ifup-bnep     ifup-routes 
ifdown           ifdown-ppp     ifup-eth      ifup-sit 
ifdown-Team      ifdown-routes  ifup-ippp     ifup-tunnel 
ifdown-TeamPort  ifdown-sit     ifup-ipv6     ifup-wireless 
ifdown-bnep      ifdown-tunnel  ifup-isdn     init.ipv6-global 
ifdown-eth       ifup           ifup-plip     network-functions 
ifdown-ippp      ifup-Team      ifup-plusb    network-functions-ipv6 
ifdown-ipv6      ifup-TeamPort  ifup-post

 


[root@Eloquence network-scripts]# vi ifcfg-enp0s3

TYPE=Ethernet 
PROXY_METHOD=none 
BROWSER_ONLY=no 
BOOTPROTO=dhcp  // static : 고정 ip    dhcp : 유동 ip
DEFROUTE=yes 
IPV4_FAILURE_FATAL=no 
NAME=enp0s3 
UUID=66a6ace5-58b2-409f-9c33-aae4d310f150 
DEVICE=enp0s3 
ONBOOT=yes   // 부팅 시 해당 파일 내용 적용 여부

#IPADDR=192.168.56.100  // IP
#NETMASK=255.255.255.0  // 서브넷 마스크

#GATEWAY=192.168.56.1  // 게이트웨이
#DNS=8.8.8.8  // DNS

 

유동 IP인 dhcp를 설정할 땐 IP와 서브넷 마스크, 게이트웨이, DNS에 값이 픽스되면 안 된다. 그렇기에 '#' 주석 처리를 통해 비활성화시킨다.

 

 

[root@Eloquence network-scripts]# systemctl restart network 
[root@Eloquence network-scripts]# ifconfig -a
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 222.103.xxx.xxx  netmask 255.255.255.128  broadcast 222.103.xxx.xxx
        ether 08:00:27:6e:d5:45  txqueuelen 1000  (Ethernet)
        RX packets 12762  bytes 808557 (789.6 KiB)
        RX errors 0  dropped 345  overruns 0  frame 0
        TX packets 678  bytes 69422 (67.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 32  bytes 2592 (2.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 32  bytes 2592 (2.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

# ② 유동 IP (dhcp)

[root@Eloquence ~]# nmtui

해당 화면에서 고정 IP는

IPv4 CONFIGURATION <Manual> 이었다면,

 

유동 IP는

IPv4 CONFIGURATION <Automatic> 입니다.

 

임시IP

 

# ① 임시 IP (재부팅 시 ip 설정 없어짐)

command :

ifconfig [디바이스명] [IP/PREFIX] [up 혹은 down]   // IP 할당과 동시에 디바이스 up, down 동시에 할 수 있다.

ifconfig [디바이스명] [up 혹은 down]   // 디바이스 up, down 명령어

 

[root@Eloquence ~]# ifconfig enp0s3 192.168.0.100/24 up
[root@Eloquence ~]# ifconfig -a
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.100  netmask 255.255.255.0  broadcast 192.168.0.255
        ether 08:00:27:6e:d5:45  txqueuelen 1000  (Ethernet)
        RX packets 35944  bytes 3567656 (3.4 MiB)
        RX errors 0  dropped 345  overruns 0  frame 0
        TX packets 4513  bytes 1790156 (1.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

[root@Eloquence ~]# ifconfig enp0s3 192.168.0.100/24 down
[root@Eloquence ~]# ifconfig -a
enp0s3: flags=4098<BROADCAST,RUNNING,MULTICAST>  mtu 1500 
        inet 192.168.0.100  netmask 255.255.255.0  broadcast 192.168.0.255
        ether 08:00:27:6e:d5:45  txqueuelen 1000  (Ethernet) 
        RX packets 37054  bytes 3685515 (3.5 MiB) 
        RX errors 0  dropped 345  overruns 0  frame 0 
        TX packets 4678  bytes 1853763 (1.7 MiB) 
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

# ② 임시 IP (ifconfig 명령어가 없을 때 사용하면 됨, 재부팅 시 ip 설정 없어짐)

command :

ip addr add [IP/PREFIX] [디바이스명]

ip link set [디바이스명] [up 혹은 down]

 

[root@Eloquence ~]# ip addr add 192.168.0.100/24 enp0s3

[root@Eloquence ~]# ip link set enp0s3 up
[root@Eloquence ~]# ip addr show
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:6e:d5:45 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.100/24 brd 192.168.0.255 scope global noprefixroute dynamic enp0s3
       valid_lft 3260sec preferred_lft 3260sec
    inet6 fe80::a00:27ff:fe6e:d545/64 scope link
       valid_lft forever preferred_lft forever

 

[root@Eloquence ~]# ip link set enp0s3 down
[root@Eloquence ~]# ip addr show

2: enp0s3: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000 
    link/ether 08:00:27:6e:d5:45 brd ff:ff:ff:ff:ff:ff

 

끝으로 ifconfig와 ip addr 명령어의 차이는 간단하다.

리눅스에는 네트워크 설정을 관리하는 Network Manager 데몬이 존재한다. 

ifconfig -a  :  Network Manager를 통해 추가한 ip를 포함한 모든 설정 정보들을 볼 수 없다.

ip addr show : Network Manager를 통해 추가한 모든 설정을 볼 수 있다.

 

ip addr show 명령어를 권장하는 바이다. 끝!

반응형

댓글

Designed by JB FACTORY