Microsoft MVP성태의 닷넷 이야기
Linux: 33. Linux - nmcli를 이용한 고정 IP 설정 [링크 복사], [링크+제목 복사],
조회: 18524
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

Linux - nmcli를 이용한 고정 IP 설정

아래의 덧글에 "오스카"란 분이,

우분투 20.04 초기 설정 - 고정 IP 및 SSH 설치
; https://blog.naver.com/techshare/222095698469

nmcli를 소개해 주었습니다.

nmcli를 이용한 IP 설정
; https://m.blog.naver.com/ijoos/221804461551

이제서야 제대로 된 명령행 프로그램을 ^^ 알게 되었군요.

참고로 간략하게 사용법을 보면, 우선 nmcli가 다루는 대상이 "네트워크 프로파일"이라는 점을 알고 있어야 합니다. 그래서 신규 "프로파일"을 "con add" 옵션으로 만들 수 있고,

# nmcli con add con-name "test" type ethernet ifname eth0 ip4 192.168.100.50/24 gw4 192.168.100.1 ipv4.method manual
Connection 'test' (15048329-e254-4be8-bb51-28057513a56e) successfully added.

이것은 신규로 만들어진 것이기 때문에 기존 IP 설정을 가지고 있는 프로파일은 여전히 별도로 존재하게 됩니다. 이를 "con show"로 확인할 수 있습니다.

# nmcli device status
DEVICE   TYPE      STATE      CONNECTION 
eth0     ethernet  connected  Wired connection 1  

# nmcli dev show eth0
GENERAL.DEVICE:                         eth0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:15:5D:00:97:05
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     Wired connection 1
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/3
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         192.168.100.150/24
IP4.GATEWAY:                            192.168.100.1
IP4.ROUTE[1]:                           dst = 192.168.100.0/24, nh = 0.0.0.0, mt = 101
IP6.ADDRESS[1]:                         fe80::c90e:9b5d:eb39:1e77/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 101

# nmcli con show
NAME                UUID                                  TYPE      DEVICE 
Wired connection 1  55ed942b-8615-399d-8918-b120a6632327  ethernet  eth0   
test                15048329-e254-4be8-bb51-28057513a56e  ethernet  --     

동작은 프로파일을 선택하는 식으로 이뤄지는데 위의 경우에는 "Wired connection 1"이 "eth0" 디바이스에 바인딩되어 있으므로 현재 활성화된 것은 "Wired connection 1" 프로파일에 해당합니다.

따라서, 만약 신규 프로파일을 추가하는 것이 아닌, 현재의 eth0에 할당된 "Wired connection 1" 프로파일에 설정된 IP를 변경하고 싶다면 "con mod" 옵션을 주면 됩니다.

# nmcli con mod "Wired connection 1" ipv4.addresses 192.168.100.50/24

그리고 변경 사항을 반영하려면 "con up" 옵션으로 재차 실행하고,

# nmcli con up "Wired connection 1"

당연히, 필요 없는 프로파일을 삭제할 수도 있습니다.

# nmcli con delete uuid 15048329-e254-4be8-bb51-28057513a56e
Connection 'test' (15048329-e254-4be8-bb51-28057513a56e) successfully deleted.

(참고로, 동일한 기능이지만 TUI를 가진 nmtui 명령어가 더 편할 수 있습니다. ^^)




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 5/6/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 76  77  [78]  79  80  81  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
11986정성태7/17/201916906오류 유형: 557. 드라이브 문자를 할당하지 않은 파티션을 탐색기에서 드라이브 문자와 함께 보여주는 문제
11985정성태7/17/201917056개발 환경 구성: 452. msbuild - csproj에 환경 변수 조건 사용 [1]
11984정성태7/9/201925584개발 환경 구성: 451. Microsoft Edge (Chromium)을 대상으로 한 Selenium WebDriver 사용법 [1]
11983정성태7/8/201914931오류 유형: 556. nodemon - 'mocha' is not recognized as an internal or external command, operable program or batch file.
11982정성태7/8/201915005오류 유형: 555. Visual Studio 빌드 오류 - result: unexpected exception occured (-1002 - 0xfffffc16)
11981정성태7/7/201918081Math: 64. C# - 3층 구조의 신경망(분류)파일 다운로드1
11980정성태7/7/201928210개발 환경 구성: 450. Visual Studio Code의 Java 확장을 이용한 간단한 프로젝트 구축파일 다운로드1
11979정성태7/7/201918486개발 환경 구성: 449. TFS에서 gitlab/github등의 git 서버로 마이그레이션하는 방법
11978정성태7/6/201917709Windows: 161. 계정 정보가 동일하지 않은 PC 간의 인증을 수행하는 방법 [1]
11977정성태7/6/201922306오류 유형: 554. git push - error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
11976정성태7/4/201916679오류 유형: 553. (잘못 인증 한 후) 원격 git repo 재인증 시 "remote: HTTP Basic: Access denied" 오류 발생
11975정성태7/4/201925475개발 환경 구성: 448. Visual Studio Code에서 콘솔 응용 프로그램 개발 시 "입력"받는 방법
11974정성태7/4/201921204Linux: 22. "Visual Studio Code + Remote Development"로 윈도우 환경에서 리눅스(CentOS 7) C/C++ 개발
11973정성태7/4/201919939Linux: 21. 리눅스에서 공유 라이브러리가 로드되지 않는다면?
11972정성태7/3/201923745.NET Framework: 847. JAVA와 .NET 간의 AES 암호화 연동 [1]파일 다운로드1
11971정성태7/3/201919995개발 환경 구성: 447. Visual Studio Code에서 OpenCvSharp 개발 환경 구성
11970정성태7/2/201918593오류 유형: 552. 웹 브라우저에서 파일 다운로드 후 "Running security scan"이 끝나지 않는 문제
11969정성태7/2/201919085Math: 63. C# - 3층 구조의 신경망파일 다운로드1
11968정성태7/1/201925776오류 유형: 551. Visual Studio Code에서 Remote-SSH 연결 시 "Opening Remote..." 단계에서 진행되지 않는 문제 [1]
11967정성태7/1/201919826개발 환경 구성: 446. Synology NAS를 Windows 10에서 iSCSI로 연결하는 방법
11966정성태6/30/201918786Math: 62. 활성화 함수에 따른 뉴런의 출력을 그리드 맵으로 시각화파일 다운로드1
11965정성태6/30/201919360.NET Framework: 846. C# - 2차원 배열을 1차원 배열로 나열하는 확장 메서드파일 다운로드1
11964정성태6/30/201920921Linux: 20. C# - Linux에서의 Named Pipe를 이용한 통신
11963정성태6/29/201920649Linux: 19. C# - .NET Core Unix Domain Socket 사용 예제
11962정성태6/27/201918314Math: 61. C# - 로지스틱 회귀를 이용한 선형분리 불가능 문제의 분류파일 다운로드1
11961정성태6/27/201917842Graphics: 37. C# - PLplot - 출력 모음(Family File Output)
... 76  77  [78]  79  80  81  82  83  84  85  86  87  88  89  90  ...