/etc/network/interfaces 구문에 대한 자세한 설명은 무엇입니까?

/etc/network/interfaces 구문에 대한 자세한 설명은 무엇입니까?

나는 그것을 사용하는 방법에 대한 매우 기본적인 개념을 이해 /etc/network/interfaces하지만 온라인에서 찾은 것은 복사하여 붙여넣을 수 있는 예제, 예제뿐입니다. 내가 누락된 것은 구문에 대한 설명, 명령의 의미 및 필요한 순서입니다. 새 컴퓨터에서 작업하는 것이 아니기 때문에 대부분의 경우 복사 붙여넣기만으로는 충분하지 않기 때문에 기존 구성을 덮어쓸 수 없기 때문에 많은 문제가 발생하므로 이해하고 싶습니다. man interfaces작성하기가 매우 복잡하기 때문에 별로 도움이 되지 않습니다.

내가 가지고 있는 질문 예: inetiface줄의 정확한 의미는 무엇입니까(맨 페이지에서도 찾을 수 없습니다), manualiface줄의 정확한 의미는 무엇입니까(많은 예제에서 사용하지만 맨페이지에 따르면 필요한 것입니다) 예제가 나타나지 않는 추가 구성 파일), 언제 사용하거나 필요합니까? 그렇지 않을 때는? 브리지를 생성하면 인터페이스는 정확히 어떻게 되나요?

답변1

글쎄, 더 쉽게 이해할 수 있도록 부분으로 나누어 보겠습니다 /etc/network/interfaces.

링크 레이어+인터페이스 유형 옵션(일반적으로 각 인터페이스의 첫 번째제전다음을 통해 주소 패밀리 + 메소드를 호출합니다.interfaces(5)매뉴얼 페이지):

auto interface– 시작 시 인터페이스를 시작합니다. 이것이 lo인터페이스가 이 링크 구성을 사용하는 이유입니다.

allow-auto interface- 와 똑같아auto

allow-hotplug interface– "핫 플러그" 이벤트가 감지되면 인터페이스를 시작합니다. 실제 사용에서는 auto"udev hotplug api에 의해 감지됨" 또는 "케이블 연결됨"과 같은 이벤트를 기다린다는 점에서 동일하지만 다릅니다. 바라보다"관련 콘텐츠(핫스왑)" 자세한 내용은.

이러한 옵션은 인터페이스에서 링크 상태를 설정하기 위한 거의 "계층 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. 을 생성해야피어 투 피어inet wvdial인터페이스이며 해당 인터페이스의 구성을 wvdialconf스크립트 로 전달하는 등 주소를 얻는 다양한 방법이 있을 수 있습니다 . 튜플 inet/ inet6+는 option버전을 정의합니다IP 프로토콜사용할 주소와 구성 방법( static, dhcp, scripts...)입니다. 이것온라인 데비안 매뉴얼이에 대한 자세한 내용을 안내해 드립니다.

이더넷 인터페이스 옵션:

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에서는VLAN 인터페이스이를 호출하면 vlan10이더넷 프레임의 태그 번호 10이 처리됩니다.

인터페이스 섹션(레이어 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 인터페이스에서 "Father"를 정의합니다.

bridge_ports– 브릿지 인터페이스에서 해당 멤버를 정의하십시오.

down– 대신 인터페이스를 종료하려면 다음 명령을 사용하십시오 ifdown.

post-down– 인터페이스가 종료된 후 즉시 조치가 취해집니다.

pre-up– 인터페이스를 시작하기 전의 작업.

up– 인터페이스를 시작하려면 다음 명령을 사용하십시오 ifup. 제공된 옵션을 사용하는 것은 전적으로 귀하의 상상에 달려 있습니다 iputils. 예를 들어 up ip link set $IFACE up mtu 9000활성화하는 데 사용할 수 있습니다.점보 프레임( 옵션 자체를 사용 하는 up대신 ) 인터페이스가 나타난 후 5초 동안 100Mbps 전이중을 강제하는 mtu등 다른 소프트웨어를 호출할 수도 있습니다 .up sleep 5; mii-tool -F 100baseTx-FD $IFACE

hwaddress ether 00:00:00:00:00:00- ROM에 하드 코딩되거나 알고리즘에 의해 생성된 주소를 사용하는 대신 인터페이스의 MAC 주소를 변경합니다. 키워드를 사용하여 random임의의 MAC 주소를 얻을 수 있습니다.

dns-nameservers– 네임서버의 IP 주소. 패키지가 필요합니다 resolvconf. 이는 DNS 관련 구성 /etc/network/interfaces이외의 모든 정보를 중앙 집중화하는 방법입니다 . 구성 파일은 시스템의 프로그램에 의해 동적으로 변경될 수 있으므로 수동으로 편집 /etc/resolv.conf하지 마십시오 .resolv.conf

dns-search example.net– example.net을 호스트 쿼리에 도메인으로 추가하여 FQDN을 생성합니다. domain옵션/etc/resolv.conf

wpa-ssid– 무선: 무선 WPA SSID를 설정합니다.

mtu-최대 전송 단위크기. mtu 9000= 점보 프레임. 이는 Linux 시스템이 더 큰 MTU 크기를 지원하는 스위치에 연결된 경우 유용합니다. 일부 프로토콜을 깨뜨릴 수 있습니다(저는 snmp 및 점보 프레임에 대해 나쁜 경험을 했습니다).

wpa-psk– 무선: SSID에 대해 16진수로 인코딩된 PSK를 설정합니다.

ip_rp_filter 1-역방향 경로 필터활성화되었습니다. 호스트에 대한 경로가 2개 있는 상황에서 유용합니다. 이렇게 하면 패킷이 원래 있던 곳(해당 경로를 사용하는 동일한 인터페이스)에서 강제로 되돌아오게 됩니다. 예: lan( )에 연결되어 있고 lan( )에 하나의 인터페이스가 있고 관리 작업을 위해 dmz에 다른 인터페이스( ) 192.168.1.1/24가 있는 dlna 서버가 있습니다 . 컴퓨터에서 dlna dmz ip로 SSH 세션을 진행하는 동안 정보가 사용자에게 반환되어야 하지만 dlna 서버가 LAN 인터페이스를 통해 직접 응답을 전달하려고 시도하기 때문에 영원히 정지됩니다. rp_filter가 활성화되면 연결이 원본에서 반환되도록 보장합니다. 추가 정보192.168.1.10/24172.16.1.1/24여기.

이러한 옵션 중 일부는 선택 사항이 아닙니다. 예를 들어, 넷마스크 없이 인터페이스에 IP 주소를 입력하면 Debian은 경고를 표시합니다.

다음에서 더 좋은 네트워크 구성 예를 찾을 수 있습니다.여기.

관련 정보:

/etc/network/interfaces네트워크 프로필과 관련된 정보가 포함된 링크:

답변2

나는 또한 다음을 추가하고 싶습니다:

  • ifup/ifdown 서비스를 위한 인터페이스입니다.
  • Allow-hotplug를 사용하면 --allow=hotplug 플래그를 사용해야 하기 때문에 ifup/ifdown으로 시작되지 않습니다.

--verbose 플래그를 사용하여 ifup에서 발생하는 상황을 추적할 수 있습니다.

이에 대해 100% 확신할 수는 없지만 기본적으로 ifup이 호출되면 up을 사용하여 /etc/network/interfaces의 모든 항목을 실행하는 것 같습니다. 달리 명시되지 않은 경우입니다.

서비스 네트워크와 어떤 관련이 있는지 잘 모르겠습니다.

누군가가 통화 후에 무슨 일이 일어났는지 지적할 수 있다면 좋을 것입니다.

service networking restart

ifup/ifdown과 관련됩니다.

답변3

이 패키지를 사용할 때 옵션을 추가해야 하는 경우 resolvconf(예: Ubuntu에서) 이 구성을 다음 위치에 넣을 수 있습니다 /etc/resolvconf/resolv.conf.d/base.

# /etc/resolvconf/resolv.conf.d/base
options timeout:1 attempts:1 rotate

답변4

속성 이름에서 중요한 점은 다음과 같습니다.

표준 설명이 포함된 문서가 없습니다. 이는 파일이 구현이 정의되었음을 의미합니다.

소문자, 대문자 또는 대소문자 혼합 가능

"-" 또는 "_"는 중요하지 않습니다.

공백과 탭을 포함할 수 없습니다.

ifupdown 소스에 따르면

"pre-up", "down" 등과 같은 일부 일반적인 이름을 제외하고는 다른 방식으로 쓸 수 없습니다.

관련 정보