사용자 도구

사이트 도구


linux:network_manager

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linux:network_manager [2015/12/25 00:57]
kwon37xi
linux:network_manager [2023/06/22 10:35] (현재)
kwon37xi [WiFi 절전 기능 끄기 (powersave off)]
줄 1: 줄 1:
 ====== Linux network-manager ====== ====== Linux network-manager ======
   * https://wiki.gnome.org/Projects/NetworkManager   * https://wiki.gnome.org/Projects/NetworkManager
 +  * [[https://developer.gnome.org/NetworkManager/stable/nmcli.html|nmcli]]
   * [[https://wiki.archlinux.org/index.php/NetworkManager|Arch Linux Network Manager]]   * [[https://wiki.archlinux.org/index.php/NetworkManager|Arch Linux Network Manager]]
 +  * https://help.ubuntu.com/community/NetworkManager
   * Linux Network/WiFi 관리자   * Linux Network/WiFi 관리자
  
   * [[linux:tint2|tint2]] 설치 후에도 네트워크 매니져 아이콘이 알림 영역(notification area)에 안보였는데 눌러보면 뭔가 있어서 WIFI 설정이 가능했다. 일단 기본 설정을 하고 나면 잘 보임.   * [[linux:tint2|tint2]] 설치 후에도 네트워크 매니져 아이콘이 알림 영역(notification area)에 안보였는데 눌러보면 뭔가 있어서 WIFI 설정이 가능했다. 일단 기본 설정을 하고 나면 잘 보임.
  
-===== "waiting for network configuration" 문제 =====+===== VPN 선별적 Routing ===== 
 +  * KDE의 경우**IPv4 -> 라우팅** 에서 **이 연결의 자원에만 사용(''never-default=true'')** 을 체크하고, IP 주소와 network mask 를 지정해주면 된다. 
 +  * 이렇게 하면 기본으로 모든 요청은 VPN을 타지 않고 
 +  * IP/Network Mask를 추가한 것만 VPN을 탄다. 
 +  * Network Mask 는 ''111.222.333.444/XX''의 ''XX''에 해당하는 것으로 앞의 두자리 고정이고, 나머지 2자리의 모든 IP에 대해 모두 VPN 라우팅을 할 경우에는 ''255.255.0.0'' 으로 지정한다(''/16''과 동일). 
 +  * 특정 IP 를 명시하는 경우에는 ''255.255.255.255''이다. 
 +  * Gateway 는 ''0.0.0.0''으로 지정하고, Metric ''0''으로 지정한다. 
 +  * [[https://www.ip-sa.pl/doc/ras/max800-6000/m8netcfg/maxip.htm|Configuring IP Routing]] 참조. 
 +  * 설정 파일 직접 편집은 ''/etc/NetworkManager/system-connections/*.nmconnection''을 직접 편집하면 된다. 
 + 
 +<code> 
 +[ipv4] 
 +dns-search= 
 +method=auto 
 +never-default=true 
 +route1=xx.yy.zz.ww/32 
 +route2=xx.yy.zz.ww/24 
 +route3=... 
 +</code> 
 + 
 +===== nmcli 를 통한 커넥션 변경 / routing 변경 ===== 
 +  * [[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-configuring_static_routes_using_nmcli|4.2. Configuring Static Routes Using nmcli Red Hat Enterprise Linux 7 | Red Hat Customer Portal]] 
 +<code sh> 
 +# 추가 : - 
 +sudo nmcli connection modify <connection-name> +ipv4.routes "<예시IP>/32" 
 + 
 +# 삭제 : - 
 +sudo nmcli connection modify <connection-name> -ipv4.routes "<예시IP>/32" 
 +</code> 
 +===== 설정 reload ===== 
 +  * ''*.nmconnection'' 파일을 직접 편집했을 경우 리로드를 해야 적용된다. 
 +<code> 
 +sudo nmcli connection reload 
 +</code> 
 + 
 +===== nmtui ===== 
 +  * ''nmtui'' 명령으로 터미널에서 설정 가능하다. 
 + 
 +===== 설정 import/export ===== 
 +==== nmcli 를 이용한 방법 ==== 
 +  * [[https://unix.stackexchange.com/questions/140163/import-vpn-config-files-to-networkmanager-from-command-line|Import VPN config files to NetworkManager from command line - Unix & Linux Stack Exchange]] 
 +  * [[https://developer.gnome.org/NetworkManager/stable/nmcli.html|nmcli: NetworkManager Reference Manual]] 
 +  * export 시에 정보가 많이 누락되는 것으로 보임. 
 +<code sh> 
 +# export 
 +nmcli connection export <UUID> myconfig.ovpn 
 + 
 +# import 
 +nmcli connection import type openvpn file ~/myconfig.ovpn 
 +</code> 
 +  * 목록을 보고 수정할거 수정해주기 
 +<code sh> 
 +nmcli connection show 
 +nmcli connection modify myvpnconnectionname +vpn.data username=myusername 
 +</code> 
 +==== 파일 복사방법 ==== 
 + 
 +  * [[https://unix.stackexchange.com/questions/351005/how-to-export-and-migrate-networkmanager-settings-to-new-system|networking - How to export and migrate NetworkManager settings to new system? - Unix & Linux Stack Exchange]] 
 +  * ''/etc/Networkmanager/system-connections'' 에 있는 설정정보를 복사한다. 
 +  * MAC Address 를 새로운 기기에 맞게 변경해줘야 한다.''ip a''로 MAC Addr 확인. 
 +<code sh> 
 +cd /etc/NetworkManager/system-connections 
 +sed -i -e 's/<old mac>/<new mac>/ * 
 +</code> 
 +  * 복사한 파일의 권한을 변경해줘야 한다. 
 +<code sh> 
 +cd /etc/NetworkManager/system-connections 
 +chmod 0600 * 
 +chown root:root * 
 +</code> 
 +  * 재시작 
 +<code sh> 
 +systemctl restart NetworkManager 
 +</code> 
 + 
 +==== 비밀번호 ==== 
 +  * 비밀번호는 설정파일이 아니라 [[linux:kde:kwallet|KDE KWallet]] 이나 [[linux:gnome-keyring|Gnome-Keyring]] 등에 저장된다. 
 +  * 따라서 keyring 서비스도 백업해야한다. 
 + 
 + 
 + 
 + 
 +===== username 저장 안되는 문제 ===== 
 +  * VPN 설정에서 사용자명(username)이 저장되지 않고 계속해서 물어보는 현상 발생 
 +  * [[https://askubuntu.com/questions/1233550/openconnect-keeps-asking-for-username-in-ubuntu-20-04|network manager - Openconnect keeps asking for username in Ubuntu 20.04 - Ask Ubuntu]] 
 +  * [[https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2105|Username is not saved in openconnect VPN connection dialog (#2105) · Issues · GNOME / gnome-shell · GitLab]] : 실제 작동한 해결책 
 +  * [[https://bugzilla.redhat.com/show_bug.cgi?id=1332491#c24|1332491 – NetworkManager-openconnect not saving username in dialog]] 
 +  * ''/etc/NetworkManager/system-connections/'' 아래에 있는 설정파일 중 VPN 관련 설정 파일을 찾아서 아래 명령으로 수정가능하다. 
 + 
 +<code> 
 +# sudo 불필요. 
 +# <VPNNAME>, <username> 을 자신의 값으로 변경 - 실제로는 잘 안됐음. 
 +nmcli con mod <VPNNAME|UUID> vpn.secrets 'form:main:username=<username>','save_passwords=yes','vpn 'form:main:username-flags=0' 
 +</code> 
 + 
 +===== "waiting for network configuration" 혹은 네트워크 설정 변경후 부팅 오래걸리는 문제 =====
   * [[http://askubuntu.com/questions/213614/waiting-for-network-configuration-problem|networking - "waiting for network configuration" Problem]]   * [[http://askubuntu.com/questions/213614/waiting-for-network-configuration-problem|networking - "waiting for network configuration" Problem]]
   * [[http://askubuntu.com/questions/144743/ubuntu-server-12-04-waiting-for-network-configuration-and-network-down|wireless - Ubuntu Server 12.04: "waiting for network configuration" and network down]]   * [[http://askubuntu.com/questions/144743/ubuntu-server-12-04-waiting-for-network-configuration-and-network-down|wireless - Ubuntu Server 12.04: "waiting for network configuration" and network down]]
줄 23: 줄 120:
 가급적 첫번째 해결책을 사용한다. 그래도 안되면, ''/etc/init/failsafe.conf'' 파일에서 불필요하게 오래 기다리는 시간을 줄인다. 가급적 첫번째 해결책을 사용한다. 그래도 안되면, ''/etc/init/failsafe.conf'' 파일에서 불필요하게 오래 기다리는 시간을 줄인다.
 최초의 ''sleep'' 값을 5 초 정도로 짧게 주고 나머지 ''sleep'' 부분은 ''#''으로 주석처리해버리면 된다. 최초의 ''sleep'' 값을 5 초 정도로 짧게 주고 나머지 ''sleep'' 부분은 ''#''으로 주석처리해버리면 된다.
 +
 +===== nm-connection-editor / nmtui-editor =====
 +  * ''nm-connection-editor'' 명령으로 GUI 로 커넥션을 편집할 수 있다.
 +  * ''nmtui-editor'' 명령으로 console 에서 커넥션을 편집할 수 있다.
 +
 +===== WiFi 절전 기능 끄기 (powersave off) =====
 +  * [[https://unix.stackexchange.com/questions/269661/how-to-turn-off-wireless-power-management-permanently|linux - How to turn off Wireless power management permanently - Unix & Linux Stack Exchange]]
 +  * ''sudoedit /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf'' 에서 **''wifi.powersave=2''**로 변경
 +<code>
 +[connection]
 +wifi.powersave = 2 # 기존 값은 3
 +</code>
 +  * ''NM_SETTING_WIRELESS_POWERSAVE_DEFAULT (0)'': use the default value
 +  * ''NM_SETTING_WIRELESS_POWERSAVE_IGNORE  (1)'': don't touch existing setting
 +  * ''NM_SETTING_WIRELESS_POWERSAVE_DISABLE (2)'': disable powersave
 +  * ''NM_SETTING_WIRELESS_POWERSAVE_ENABLE  (3)'': enable powersave
 +  * NetworkManager 재시작
 +<code sh>
 +sudo systemctl restart NetworkManager
 +</code>
 +===== 참조 =====
 +  * [[https://developer.gnome.org/NetworkManager/stable/nmcli.html|nmcli: NetworkManager Reference Manual]]
  
linux/network_manager.1450974425.txt.gz · 마지막으로 수정됨: 2015/12/25 00:57 저자 kwon37xi