/etc/network/interfaces
사용 방법에 대한 매우 기본적인 개념을 이해했지만 온라인에서 찾은 것은 모두 예입니다. 예를 들어 복사하여 붙여 넣을 수 있습니다. 내가 놓친 것은 구문에 대한 설명, 명령의 의미 및 명령에 필요한 순서에 대한 설명입니다. 저는 대부분의 경우 복사-붙여 넣기만으로는 충분하지 않기 때문에 이해하고 싶습니다. 왜냐하면 저는 새로운 컴퓨터에서 작업하지 않기 때문입니다. 그래서 많은 것을 망칠 수 있기 때문에 기존 구성을 덮어 쓸 수 없습니다. man interfaces
는 매우 복잡하게 작성 되었기 때문에 그다지 도움이되지 않았습니다.
예제 질문 : inet
iface
행은 정확히 의미합니다 (맨 페이지에서도 찾을 수 없음). iv id = “ef9ef8dec4에서 manual
의 의미 “>
행은 정확히 (많은 예제에서 사용하지만 맨 페이지에 따르면 추가 구성 파일이 필요하며 예제에는 없음), 언제 사용하거나 필요합니까? 언제 사용하지 않습니까? 인터페이스에 정확히 어떤 일이 발생합니까?
설명
답변
글쎄요, 이해하기 쉽도록 조각으로 나누겠습니다. /etc/network/interfaces
:
링크 레이어 + 인터페이스 유형 옵션 (일반적으로 각 인터페이스 스탠자의 첫 번째이며 에 의해 주소 패밀리 + 메소드라고 함) interfaces(5)
맨 페이지) :
auto interface
– 부팅시 인터페이스를 시작합니다. 이것이 lo
인터페이스에서 이러한 종류의 연결 구성을 사용하는 이유입니다.
allow-auto interface
–
allow-hotplug interface
–”핫 플러그 “이벤트가 감지되면 인터페이스를 시작합니다. 실제로는 auto
와 동일한 상황에서 사용되지만 차이점은 “udev hotplug api에 의해 감지 됨”또는 “케이블 연결됨”과 같은 이벤트를 기다린다는 것입니다. . 추가 정보는 “ 관련 항목 (hotplug) “을 참조하세요.
이 옵션은 링크 상태를 설정하는 거의 “레이어 2″옵션입니다. 인터페이스에 있으며 “계층 3″(라우팅 및 주소 지정)과 관련이 없습니다. 예를 들어, 링크 상태에 관계없이 bond0 인터페이스가 작동해야하는 링크 집계가있을 수 있으며 해당 멤버는 링크 상태 이벤트 후에 작동 할 수 있습니다.
auto bond0 iface bond0 inet manual down ip link set $IFACE down post-down rmmod bonding pre-up modprobe bonding mode=4 miimon=200 up ip link set $IFACE up mtu 9000 up udevadm trigger allow-hotplug eth0 iface eth0 inet manual up ifenslave bond0 $IFACE down ifenslave -d bond0 $IFACE 2> /dev/null allow-hotplug eth1 iface eth1 inet manual up ifenslave bond0 $IFACE down ifenslave -d bond0 $IFACE 2> /dev/null
이 방법으로 링크 집계 를 만들고 인터페이스가 여기에 추가되고 케이블 링크 상태에서 제거됩니다.
가장 일반적인 인터페이스 유형 :
아래의 모든 옵션은 정의 된 인터페이스에 대한 접미사입니다 (iface <Interface_family>
). 기본적으로 iface eth0
는 이더넷 장치에 eth0
라는 스탠자 를 만듭니다. . iface ppp0
는 지점 간 인터페이스를 만들어야하며
는이 인터페이스의 구성을 wvdialconf
스크립트로 전달합니다. 튜플 inet
/ inet6
+ option
는 IP 프로토콜 및이 주소가 구성되는 방식 (static
, dhcp
, scripts
…). 온라인 Debian 설명서 에서 이에 대한 자세한 내용을 확인할 수 있습니다.
이더넷 인터페이스 옵션 :
inet static
– 고정 IP 주소를 정의합니다.
inet manual
– 인터페이스에 대한 IP 주소를 정의하지 않습니다. 일반적으로 브리지 또는 집계 멤버 인 인터페이스, 무차별 모드 ( 예 : 포트 미러링 또는 네트워크 TAP )에서 작동해야하는 인터페이스 또는 VLAN 장치가 구성된 인터페이스에서 사용됩니다. IP 주소없이 인터페이스를 유지하는 방법입니다.
inet dhcp
– DHCP 프로토콜을 통해 IP 주소를 얻습니다.
inet6 static
– 정적 IPv6 주소를 정의합니다.
예 :
# Eth0 auto eth0 iface eth0 inet manual pre-up modprobe 8021q pre-up ifconfig eth0 up post-down ifconfig eth0 down # Vlan Interface auto vlan10 iface vlan10 inet static address 10.0.0.1 netmask 255.255.255.0 gateway 10.0.0.254 vlan-raw-device eth0 ip_rp_filter 0
이 예는 eth0
를 가져 와서 더넷 프레임에서 태그 번호 10을 처리 할 vlan10
라는 div id = “524f6c3d5b”>
VLAN 인터페이스
인터페이스 스탠자 (레이어 2 및 3) 내의 공통 옵션 :
address
– 고정 IP 구성 인터페이스의 IP 주소
netmask
– 네트워크 마스크. cidr 주소를 사용하는 경우 생략 할 수 있습니다. 예 :
iface eth1 inet static address 192.168.1.2/24 gateway 192.168.1.1
gateway
– 서버의 기본 게이트웨이. 이 사람 중 하나만 사용하도록주의하십시오.
vlan-raw-device
– VLAN 인터페이스에서 “아버지”를 정의합니다.
bridge_ports
– 브리지 인터페이스에서 해당 멤버를 정의합니다.
down
– 대신 다음 명령을 사용하여 인터페이스를 다운합니다. ifdown
.
post-down
– 인터페이스가 다운 된 직후 수행되는 작업
pre-up
– 인터페이스가 가동되기 전의 작업입니다.
up
– ifup
. iputils
에서 사용 가능한 옵션을 사용하는 것은 상상력에 달려 있습니다. 예를 들어 up
동안 up ip link set $IFACE up mtu 9000
를 사용하여 점보 프레임 을 활성화 할 수 있습니다. div> 작업 (mtu
옵션 자체를 사용하는 대신). 인터페이스가 가동 된 후 5 초 후에 up sleep 5; mii-tool -F 100baseTx-FD $IFACE
와 같은 다른 소프트웨어를 호출하여 100Mbps 전이중을 강제 할 수도 있습니다.
hwaddress ether 00:00:00:00:00:00
-ROM에 하드 코딩되거나 알고리즘에 의해 생성 된 주소를 사용하는 대신 인터페이스의 MAC 주소를 변경합니다. 키워드 random
를 사용하여 임의의 Mac 주소를 가져올 수 있습니다.
dns-nameservers
– 네임 서버의 IP 주소. resolvconf
패키지가 필요합니다. DNS 관련 구성에 /etc/resolv.conf
를 사용하는 대신 /etc/network/interfaces
에 모든 정보를 집중하는 방법입니다. resolv.conf
구성 파일은 시스템의 프로그램에 의해 동적으로 변경되므로 수동으로 편집하지 마십시오.
dns-search example.net
– example.net을 호스트 쿼리에 도메인으로 추가하여 FQDN을 만듭니다. 옵션 domain
of /etc/resolv.conf
wpa-ssid
– 무선 : 설정 무선 WPA SSID.
mtu
– MTU 크기. mtu 9000
= 점보 프레임. Linux 상자가 더 큰 MTU 크기를 지원하는 스위치와 연결된 경우 유용합니다. 일부 프로토콜을 깨뜨릴 수 있습니다 (SNMP 및 점보 프레임에 대한 경험이 좋지 않음).
wpa-psk
– 무선 : SSID에 16 진수로 인코딩 된 PSK를 설정합니다.
ip_rp_filter 1
– 역 경로 필터 가 활성화되었습니다. 호스트에 대한 2 개의 경로가있는 상황에서 유용하며, 이는 패킷이 원래 위치 (동일한 인터페이스, 경로를 사용)에서 되돌아 오도록합니다. 예 : lan (192.168.1.1/24
)에 연결되어 있고 lan (192.168.1.10/24
)에 하나의 인터페이스가있는 dlna 서버가 있습니다. 관리 작업을 실행하기위한 dmz의 인터페이스 (172.16.1.1/24
). 컴퓨터에서 dlna dmz ip로 ssh 세션을 수행하는 동안 정보가 다시 돌아와야하지만 dlna 서버가 lan 인터페이스를 통해 직접 응답을 전달하려고하기 때문에 영구적으로 중단됩니다. rp_filter를 활성화하면 더 자세한 정보는 여기 를 참조하세요.
일부 옵션은 선택 사항이 아닙니다. Debian에서 경고합니다. 예를 들어 넷 마스크가없는 인터페이스에 IP 주소를 입력하는 경우입니다.
네트워크 구성의 더 많은 좋은 예는 여기 에서 찾을 수 있습니다. .
관련 항목 :
네트워크 구성 파일 :
- HOWTO : 무선 보안-WPA1, WPA2, LEAP 등 .
- ip / iproute2로 두 인터페이스를 연결하려면 어떻게해야합니까? .
- 인터페이스의 핫 플러그 이벤트 란 무엇입니까?
댓글
- 감사합니다. 많은 도움이됩니다.
inet
가 ” 인터넷 “과 관련이 있습니까?나는 그것이 단지 ” IPv4 “를 의미하고inet6
가 ” IPv6 “, 그러나 용어 ” inet ” ” internet “의 줄임말로 보면 정말 혼란 스럽습니다. 그리고eth0
와 같이 사용하는 이름은 정의되어 있습니까 아니면 직접 선택할 수 있습니까? LAN 어댑터가 두 개 이상인 경우 어떤eth
가 어떤 LAN 어댑터에 속하는지 어떻게 알 수 있습니까? - 둘 다. 이들은 함께 IP 주소 획득 방법 (dhcp, static, ppp 스크립트, 주소 없음) 및 IP 프로토콜 버전 (
inet
= v4 및inet6
= v6). 인터페이스 이름은 사용중인 배포 및udev
구성 방식에 따라 크게 달라집니다. Debian은eth*
및wlan*
를 케이블 및 무선 인터페이스에 사용합니다. Fedora는 biosdevname 체계를 사용합니다. 여기서em0
는 마더 보드의 첫 번째 내장 이더넷 인터페이스이고p<slot>p<eth port>
PCI nic의 이름입니다./etc/udev/rules.d/70-persistent-net.rules
에서 네트워크 이름을 수정하거나interfaces
에서 별칭을 만들 수 있습니다. - gateway-서버의 기본 게이트웨이. 이 사람 중 하나만 사용하도록주의하십시오. ” 스탠 자당 하나 또는 모든 스탠자 중 하나의 게이트웨이 인터페이스입니까?
- 모든 스탠자 중 하나의 게이트웨이 여야합니다. 또는 기본 경로에 문제가 있습니다. 멀티 게이트웨이 / 멀티 링크로 작업하려면 iptables + 패키지 표시 + ip 규칙에 대한 생각이 필요합니다.
-
allow-hotplug
는 ” 케이블 연결 ” 이벤트를 수행 한 적이 없습니다. unix.stackexchange.com/a/520633/29483
Answer
또한 추가하겠습니다.
- 인터페이스는 ifup / ifdown 서비스 용입니다.
- allow-hotplug를 사용하면 ifup / ifdown으로 시작하지 않습니다. –allow = hotplug 플래그를 사용해야합니다.
U는 무엇을 추적 할 수 있습니다. –verbose 플래그를 사용하여 ifup에서 발생합니다.
100 % 확실하지는 않지만 기본적으로 ifup이 호출되면 u는 up으로 / etc / network / interfaces에서 모두 실행되는 것 같습니다. 달리 명시되지 않은 경우.
어떻게 관련되는지 잘 모르겠습니다. 서비스 네트워킹 …
누군가가 통화 후 무슨 일이 일어나고 있는지 지적한다면 좋을 것입니다.
service networking restart
ifup / ifdown 관련.
답변
resolvconf
패키지를 사용할 때 옵션을 추가해야하는 경우, 즉, Ubuntu에서는 해당 구성을 /etc/resolvconf/resolv.conf.d/base
:
# /etc/resolvconf/resolv.conf.d/base options timeout:1 attempts:1 rotate
에 넣습니다.
manual
는 ifupdown don ‘ 아무것도하지 말고 수동으로해야합니다.