PROGRAMING/SERVER OP

리눅스 - 유선랜 고정 IP할당

o_deok 2021. 1. 23. 01:40

리눅스 에러 해결 - 유선랜 고정 IP할당

 

학교에서 라즈베리파이를 활용해서 프로젝트를 시작하려다가 처음부터 엄청 해맸다.
학교에선 동적으로 할당받은 IP를 사용할 수 없고, 고정 IP를 사용해야 했기 때문이다.
네트워크에 대해서도 잘 알지못하는데 인터넷을 보니 계속 뭘 바꾸라고 바꾸라고 하는데 뭘 알 수가 있어야지.

<리눅스에서 고정 IP할당 받기>

1. sudo nano /etc/network/interfaces 수정

리눅스 기반의 운영체제에서 네트워크 설정과 관련된 파일이다.

현재 시스템(리눅스 등 운영체제)에서 사용가능한 네트워크 인터페이스에 대해 관리한다.

파일을 열었을 때 어떤 내용이 적혀있다면, 모두 지우고 아래와 같이 작성해도 좋을듯 하다.

 

# source-directory: 해당 경로에 있는 디렉토리 내에서 여러 파일들을 접근하여 네트워크 설정을 가져온다.
# interfaces.d에 있는 네트워크 설정을 본 파일로 가져위해 씀.
# 디렉토리가 아닌 각각의 파일에 접근하고 싶다면 source 키워드 사용.
source-directory /etc/network/interfaces.d

# 부팅 시 lo라는 물리적인 네트워크 인터페이스에 대해 자동으로 인지하여 이더넷 카드 장치에 올린다는 뜻(auto)
# lo는 loopback interface의 약자이고, localhost를 의미한다.
# localhost모르는 사람이 있을까, 자기 자신 네트워크이다.
# iface: 논리적인 인터페이스로(인터페이스의 성격에 대해 내가 지정한다는 의미로 보면 이해하기 쉬울 듯 하다)
# inet은 TCP/IP, ipx는 IPX networking, inet6는 IPv6를 지원한다. lo 네트워크 인터페이스는 localhost이며, TCP/IP를 지원한다.
auto lo
iface lo inet loopback

# 반복학습
# 부팅 시 eth0이라는 물리적인 네트워크 인터페이스에 대해 자동으로 인지하여 이더넷 카드 장치에 올린다.
# eth0은 static IP이며 (동적 IP는 dhcp) TCP/IP를 지원한다.
# 추가학습
# allow- : 다양한 서브 시스템을 사용할 때, 자동으로 인터페이스를 적용시키기 위해 사용. 현 상황에선 hotplug 이벤트 발생 시 인터페이스를 자동으로 시작한다.
# hotplug: kernel/udev 장치 관리 파일시스템에서 하드웨어가 감지되었을 때 발생하는 이벤트. USB Ethernet등 장치가 USB를 통해 PC에 연결되었을 때 이벤트 감지한다고 생각하면 편할듯.
#address, netmask, broadcast, gateway, dns-nameservers 용어는 구박사(구글)님께 여쭤보면 다 알고 계신다.
auto eth0
allow-hotplug eth0
iface eth0 inet static
address XXX.XX.XXX.XXX
netmask 255.255.255.0
broadcast XXX.XX.XXX.255
gateway XXX.XX.XXX.XXX
dns-nameservers XXX.XX.XXX.XXX

# wpa-conf: 무선랜 사용 시 wpa_supplicant.conf 정보를 인용해 사용.
auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

auto wlan1
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_suppplicant/wpa_supplicant.conf

interface eth0
static ip_address=XXX.XX.XXX.XXX
static routers=XXX.XX.0.1
static domain_name_servers=XXX.XX.XXX.XXX
static netmask=2555.255.255.0

 

2. 마지막으로 변경한 네트워크로 재시작 (sudo /etc/init.d/networking restart)


근데 이렇게 했는데 무슨 되도 않는 오류가 나타날 수 도 있다.

왜 계속 꼴도 보기 싫은 fail이 나타나는지 모르겠지만 google에서 천사를 내게 보내어 아래와 같은 말씀을 주셨다.

 

"Job for network.service failed. See 'systemctl status network.service' and '

                                        journalctl -xn' for details. 이런 오류가 나타날 수 도 있는데 그래도 작동이 되더라고요"

 

엥?

속는셈 치고 ping 테스트해봤는데 진짜 잘 응답했다. 잘만 응답하는데 라즈비안 이 친구는 이상한 오류를 내고 하필 나는 또 그 많은 영어로 된 말중에 fail이라는 단어만 보고 괜히 쫄아서. 뭐지, 뭘까 이러고 있었는데. 그래도 오늘 하루종일 이 놈때문에 스트레스 은근 받았는데 잘 돌아가서 다행이다.

 

근데 나도 글 쓰고 나니 다른 사람들도 똑같이 그래서 뭘 봐꾸라는 건데....할꺼같다


 

-오늘의 일기 끝-