사용자 도구

사이트 도구


linux:network_manager

Linux network-manager

  • tint2 설치 후에도 네트워크 매니져 아이콘이 알림 영역(notification area)에 안보였는데 눌러보면 뭔가 있어서 WIFI 설정이 가능했다. 일단 기본 설정을 하고 나면 잘 보임.

VPN 선별적 Routing

  • KDE의 경우IPv4 → 라우팅 에서 이 연결의 자원에만 사용(never-default=true) 을 체크하고, IP 주소와 network mask 를 지정해주면 된다.
  • 이렇게 하면 기본으로 모든 요청은 VPN을 타지 않고
  • IP/Network Mask를 추가한 것만 VPN을 탄다.
  • Network Mask 는 111.222.333.444/XXXX에 해당하는 것으로 앞의 두자리 고정이고, 나머지 2자리의 모든 IP에 대해 모두 VPN 라우팅을 할 경우에는 255.255.0.0 으로 지정한다(/16과 동일).
  • 특정 IP 를 명시하는 경우에는 255.255.255.255이다.
  • Gateway 는 0.0.0.0으로 지정하고, Metric 0으로 지정한다.
  • 설정 파일 직접 편집은 /etc/NetworkManager/system-connections/*.nmconnection을 직접 편집하면 된다.
[ipv4]
dns-search=
method=auto
never-default=true
route1=xx.yy.zz.ww/32
route2=xx.yy.zz.ww/24
route3=...

nmcli 를 통한 커넥션 변경 / routing 변경

# 추가 : -
sudo nmcli connection modify <connection-name> +ipv4.routes "<예시IP>/32"
 
# 삭제 : -
sudo nmcli connection modify <connection-name> -ipv4.routes "<예시IP>/32"

설정 reload

  • *.nmconnection 파일을 직접 편집했을 경우 리로드를 해야 적용된다.
sudo nmcli connection reload

nmtui

  • nmtui 명령으로 터미널에서 설정 가능하다.

설정 import/export

nmcli 를 이용한 방법

# export
nmcli connection export <UUID> myconfig.ovpn
 
# import
nmcli connection import type openvpn file ~/myconfig.ovpn
  • 목록을 보고 수정할거 수정해주기
nmcli connection show
nmcli connection modify myvpnconnectionname +vpn.data username=myusername

파일 복사방법

cd /etc/NetworkManager/system-connections
sed -i -e 's/<old mac>/<new mac>/ *
  • 복사한 파일의 권한을 변경해줘야 한다.
cd /etc/NetworkManager/system-connections
chmod 0600 *
chown root:root *
  • 재시작
systemctl restart NetworkManager

비밀번호

  • 비밀번호는 설정파일이 아니라 KDE KWallet 이나 Gnome-Keyring 등에 저장된다.
  • 따라서 keyring 서비스도 백업해야한다.

username 저장 안되는 문제

# sudo 불필요.
# <VPNNAME>, <username> 을 자신의 값으로 변경 - 실제로는 잘 안됐음.
nmcli con mod <VPNNAME|UUID> vpn.secrets 'form:main:username=<username>','save_passwords=yes','vpn 'form:main:username-flags=0'

"waiting for network configuration" 혹은 네트워크 설정 변경후 부팅 오래걸리는 문제

해결책 1

부팅시에 네트워크 인터페이스를 초기화하지 말고 network-manager나 wicd를 사용하도록 /etc/network/interfaces의 내용을 지워버린다. lo만 남겨도 된다. 실제로 Mint Linux 17 버전의 해당 파일을 보면 아래 내용밖에 없다.

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

해결책 2

가급적 첫번째 해결책을 사용한다. 그래도 안되면, /etc/init/failsafe.conf 파일에서 불필요하게 오래 기다리는 시간을 줄인다. 최초의 sleep 값을 5 초 정도로 짧게 주고 나머지 sleep 부분은 #으로 주석처리해버리면 된다.

참조

linux/network_manager.txt · 마지막으로 수정됨: 2021/04/30 13:46 저자 kwon37xi