Mind Doodle

리눅스(Linux) 네트워크 인터페이스 설정 [ ifconfig 명령어] 본문

IT/Linux

리눅스(Linux) 네트워크 인터페이스 설정 [ ifconfig 명령어]

Mind Doodle 2020. 6. 11. 15:59

[ 환경 ]

명령어를 확인한 환경은 다음과 같고 버전에 따라서 명령어 입력방법이 달라질 수 있습니다.

명령어를 수행 결과 내용도 OS와 버전에 따라 달라질 수 있습니다.

 

< 운영체제(OS) >

- Ubuntu 18.04 LTS (64 bit, kernel : 5.3.0-51-generic)

 

< net-tools 버전(Version) >

- net-tools 2.10-alpha

 

[ 내용 ]

< 목차 >

  1. 네트워크 인터페이스 구성 확인 : ifconfig (-a)
  2. 네트워크 인터페이스 활성화/비활성화 : ifconfig up/down
  3. 인터페이스 설정(IP, netmask, broadcast)
  4. ifconfig 명령어

 

1. 네트워크 인터페이스 구성 확인

리눅스 터미널상에서 네트워크 인터페이스를 확인하고 설정하기 위해서 ifconfig 명령어를 많이 사용합니다.

ifconfig 명령어만 입력하였을 경우에 활성화된 네트워크 인터페이스의 정보를 확인할 수 있습니다.

ifconfig

 

ifconfig 명령어만을 입력하였을 경우 비활성화된 인터페이스는 보이지 않기 때문에 '-a' 옵션을 추가하여 전체 리스트를 볼 수 있습니다.

ifconfig -a

< 각 요소에 대한 설명 >

- enp0s3, lo : 네트워크 인터페이스 이름.

- flags : 인터페이스 상태. (UP, BROADCAST, RUNNING, MULTICAST)

- mtu : 인터페이스 최대 전송 단위.

- inet : 인터페이스 할당된 IPv4 주소.

- netmask : 인터페이스 IPv4 netmask. IPv6는 netmask를 사용하지 않는다.

- broadcast : 인터페이스 broadcast 주소.

- inet6 : 인터페이스 IPv6 주소.

- prefixlen : IP주소에서 netmask bit.

- scopeid : IPv6의 범위. (LOOPBACK / LINKLOCAL / SITELOCAL / COMPATv4 / GLOBAL).

- ether : 인터페이스 MAC 주소.

- RX packets : 받은 패킷 정보 (bytes, errors, dropped, overruns, frame).

- TX packets : 보낸 패킷 정보 (bytes, errors, dropped, overruns, carrier, collisions).

 

특정 인터페이스에 대한 정보만을 표시하려면 ifconfig [interface name] 으로 명령어를 사용합니다.

ifconfig [interface name]

 

 

2. 네트워크 인터페이스 활성화/비활성화

인터페이스를 활성화/비활성화를 설정하기 위해서 터미널상에서 ifconfig 명령어를 사용할 수 있습니다.

일반적으로 디바이스에 대한 설정을 변경하기 위해서는 권한이 필요합니다.

ifconfig 명령어에 권한을 부여하기 위하여 명령어 앞에 sudo를 같이 입력하여 권한을 부여하도록 합니다. root 권한이 있을 경우는 sudo를 입력하지 않아도 됩니다.

 

< 인터페이스 활성화 >

인터페이스를 활성화하기 위해서는 up 명령 옵션을 추가하여 입력합니다.

활성화가 되면 ifconfig 명령어를 사용하여 상태를 확인할 수 있는데 flags 값을 보게 되면 UP 표시가 되어 있으면 활성화가 정상적으로 된 것입니다.

(sudo) ifconfig [interface name] up

 

< 인터페이스 비활성화 >

네트워크 인터페이스를 비활성화하기 위해서는 down 명령 옵션을 추가하여 입력합니다.

활성화 때와 마찬가지로 ifconfig 명령어를 사용하여 상태 확인이 가능하며 flags 값을 보게 되면 UP 표시가 안되어 있음을 확인할 수 있습니다.

(sudo) ifconfig [interface name] down

 

 

3. 인터페이스 설정 (IP, netmask, broadcast)

인터페이스의 활성화/비활성화뿐만 아니라 다른 설정들을 변경할 수 있는데 임베디드 소프트웨어 작업을 진행할 경우 ip 정보를 변경하는데 많이 사용됩니다.

 

< IP 주소 변경 >

인터페이스의 IP 주소를 강제로 변경할 수 있는데 공유기 등과 연결되어 있을 경우 DHCP를 통하여 자동으로 IP가 할당됩니다.

여기서는 강제로 IP 주소를 설정하도록 해보겠습니다.

ifconfig로 IP 주소를 변경할 때는 변경하고자 하는 인터페이스와 변경하고자 하는 IP 주소를 추가로 입력하여 변경합니다.

(sudo) ifconfig [interface name] [ip address]

 

< netmask 변경 >

netmask도 IP 주소를 변경할 때와 비슷한 방법으로 변경이 가능합니다.

netmask의 경우는 netmask 지정자를 먼저 입력을 해주고 변경하고자 하는 netmask 값을 추가로 입력합니다.

netmask 설정에 따라서 broadcast 주소도 netmask에 따라서 주소가 자동으로 변경될 수 있습니다.

(sudo) ifconfig [interface name] netmask [netmask value]

 

< broadcast 변경 >

broadcast도 마찬가지로 broadcast라는 지정자를 먼저 입력 후 변경하고자 하는 braodcast 주소를 입력하여 변경합니다.

(sudo) ifconfig [interface name] broadcast [broadcast address]

 

< 여러 가지 설정 동시 변경 >

여러가지 설정을 변경하기 위해서는 앞서 입력했던 설정 변경 옵션들을 순서대로 나열하여 입력하면 됩니다.

(sudo) ifconfig [interface name] [ip address] netmask [netmask value] broadcast [broadcast address]

 

 

4. ifconfig 명령어

< ifconfig 란? >

ifconfig는 네트워크 인터페이스 구성을 위한 유닉스 계열 운영체제의 시스템 관리 유틸리티입니다.

일반적으로는 위에서 사용했던 방법처럼 IP 주소와 넷마스크 설정 변경 및 네트워크 인터페이스 활성화/비활성화에 사용됩니다. 

ifconfig는 네트워크 인터페이스 구성(interface configuration)의 약자입니다.

 

< ifconfig 설치 >

Ubuntu 설치 후 ifconfig 유틸리티가 설치가 안되어 있을 수 있습니다. 

apt install 명령어를 사용하여 net-tools 패키지를 설치합니다.

이 패키지 안에는 네트워크 유틸리티들이 있는데 이중에 ifconfig도 포함되어 있습니다.

sudo apt install net-tools

 

< ifconfig 주로 사용하는 옵션 >

'-a' : 모든 정보 표시.

'up' : 네트워크 인터페이스 활성화.

'down' : 네트워크 인터페이스 비활성화.

'netmask [address]' : 넷마스크 값 설정.

 

< ifconfig help >

 

 

[ 참조 ]

https://www.whatap.io/ko/blog/11/

 

리눅스 네트워크 관리에 필요한 사용법 11가지 | 와탭 블로그

네트워크 인터페이스 관리와 모니터링을 위한 가장 기본이 되는 도구인 ifconfig를 와탭과 함께 알아봅시다.

www.whatap.io

http://manpages.ubuntu.com/manpages/trusty/man8/ifconfig.8.html

 

Ubuntu Manpage: ifconfig - configure a network interface

Powered by the Ubuntu Manpage Repository, file bugs in Launchpad © 2019 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.

manpages.ubuntu.com

https://ko.wikipedia.org/wiki/Ifconfig

 

ifconfig - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 ifconfig는 네트워크 인터페이스 구성을 위한 유닉스 계열 운영체제의 시스템 관리 유틸리티이다. 이 유틸리티는 명령 줄 인터페

ko.wikipedia.org

 

Comments