GNU/Linux
네트워크 구성
수색…
소개
인터페이스 세부 정보
Ifconfig
컴퓨터에서 사용할 수있는 모든 인터페이스 나열
$ ifconfig -a
특정 인터페이스의 세부 정보 나열
구문 : $ ifconfig <interface>
예:
$ ifconfig eth0
eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
inet addr:x.x.x.x Bcast:x.x.x.x Mask:x.x.x.x
inet6 addr: xxxx::xxx:xxxx:xxxx:xxxx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4426618 errors:0 dropped:1124 overruns:0 frame:0
TX packets:189171 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:382611580 (382.6 MB) TX bytes:36923665 (36.9 MB)
Interrupt:16 Memory:fb5e0000-fb600000
Ethtool - 네트워크 드라이버 및 하드웨어 설정 쿼리
구문 : $ ethtool <interface>
예:
$ ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: on (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
ip - 라우팅, 장치, 정책 라우팅 및 터널 표시 / 조작
구문 : $ ip { link | ... | route | macsec }
(객체의 전체 목록은 man ip
를 참조하십시오)
예제들
네트워크 인터페이스 나열
$ ip link show
인터페이스 eth0의 이름을 wan으로 변경하십시오.
$ ip link set dev eth0 name wan
인터페이스 eth0을 올리거나 내린다.
$ ip link set dev eth0 up
인터페이스 주소 나열
$ ip addr show
IP 및 마스크 (255.255.255.0) 추가 (또는 del)
$ ip addr add 1.2.3.4/24 brd + dev eth0
인터페이스에 IP 추가하기
인터페이스에 대한 IP 주소는 DHCP 또는 정적 할당을 통해 얻을 수 있습니다.
DHCP DHCP 서버가 실행중인 네트워크에 연결되어있는 경우 dhclient
명령은 인터페이스의 IP 주소를 가져올 수 있습니다
$ dhclient <interface>
또는 /etc/network/interfaces
파일을 변경하여 부팅 할 때 인터페이스를 가져 와서 DHCP IP를 얻을 수 있습니다
auto eth0
iface eth0 inet dhcp
/etc/network/interfaces
파일을 사용한 정적 구성 (영구 변경)
인터페이스 설정 (영구 변경)을 정적으로 구성하려면 /etc/network/interfaces
파일에서 변경할 수 있습니다.
예:
auto eth0 # Bring up the interface on boot
iface eth0 inet static
address 10.10.70.10
netmask 255.255.0.0
gateway 10.10.1.1
dns-nameservers 10.10.1.20
dns-nameservers 10.10.1.30
이러한 변경 사항은 시스템 재부팅 후에도 유지됩니다.
ifconfig
유틸리티를 사용한 정적 구성 (임시 변경)
다음과 같이 ifconfig
유틸리티를 사용하여 정적 IP 주소를 인터페이스에 추가 할 수 있습니다.
$ ifconfig <interface> <ip-address>/<mask> up
예:
$ ifconfig eth0 10.10.50.100/16 up
로컬 DNS 확인
파일 : /etc/hosts
에는 DNS가 아닌 로컬로 확인할 호스트 목록이 들어 있습니다.
파일의 샘플 컨텐츠 :
127.0.0.1 your-node-name.your-domain.com localhost.localdomain localhost
XXX.XXX.XXX.XXX node-name
hosts 파일의 파일 형식은 RFC 952에 의해 지정됩니다.
도메인 이름 확인을 위해 DNS 서버 구성
파일 : /etc/resolv.conf
에는 도메인 이름 확인을위한 DNS 서버 목록이 있습니다.
파일의 샘플 컨텐츠 :
nameserver 8.8.8.8 # IP address of the primary name server
nameserver 8.8.4.4 # IP address of the secondary name server
내부 DNS 서버의 경우 dig
명령을 사용하여이 서버가 DNS 이름을 올바르게 확인하는지 확인할 수 있습니다.
$ dig google.com @your.dns.server.com +short
경로 확인 및 수정
IP 라우팅 테이블을 사용하여 조작 route
라우팅 테이블 표시
$ route # Displays list or routes and also resolves host names
$ route -n # Displays list of routes without resolving host names for faster results
경로 추가 / 삭제
선택권 | 기술 |
---|---|
add 또는 del | 경로 추가 또는 삭제 |
-host xxxx | IP 주소로 식별되는 단일 호스트에 경로 추가 |
-net xxxx | 네트워크 주소로 식별 된 네트워크에 경로 추가 |
gw xxxx | 네트워크 게이트웨이 지정 |
netmask xxxx | 네트워크 넷 마스크 지정 |
default | 기본 경로 추가 |
예 :
- 호스트에
$ route add -host xxxx eth1
- 네트워크에
$ route add -net 2.2.2.0 netmask 255.255.255.0 eth0
- 또는 cidr 형식을 사용하여 네트워크
route add -net 2.2.2.0/24 eth0
경로를 추가 할 수도 있습니다.route add -net 2.2.2.0/24 eth0
- 기본 게이트웨이 추가
$ route add default gw 2.2.2.1 eth0
- 경로 삭제
$ route del -net 2.2.2.0/24
ip
사용하여 IP 라우팅 테이블 조작
라우팅 테이블 표시
$ ip route show # List routing table
경로 추가 / 삭제
선택권 | 기술 |
---|---|
add 또는 del 하거나 change 또는 append 또는 replace | 경로 변경 |
show 주거나 flush | 이 명령은 라우팅 테이블의 내용을 표시하거나 제거합니다. |
restore | stdin에서 라우팅 테이블 정보를 복원합니다. |
get | 이 명령은 대상에 대한 단일 경로를 가져오고 커널이 보는 것과 똑같은 내용을 출력합니다 |
예 :
- 기본 게이트웨이를 1.2.3.254로 설정하십시오.
$ ip route add default via 1.2.3.254
- 장치 eth0에서 도달 할 수있는 로컬 게이트웨이 192.168.1.1을 통해 모든 경로에 대한 기본 경로를 추가합니다.
$ ip route add default via 192.168.1.1 dev eth0
네트워크상의 다른 시스템에 대한 호스트 이름 구성
<hostname>
식별자를 네트워크의 다른 시스템의 IP 주소에 연결하기 위해 Linux (또는 macOS) 시스템을 구성 할 수 있습니다. 그것을 구성 할 수 있습니다 :
Systemwide. / etc / hosts 파일을 수정해야합니다. 이 파일에 다음을 포함하는 새 행을 추가하기 만하면됩니다.
- 원격 시스템의 IP 주소
<ip_rem>
- 하나 이상의 빈 칸 및
- 식별자
<hostname>
- 원격 시스템의 IP 주소
단일 사용자의 경우. ~ / .hosts 파일을 수정해야합니다. 즉, 생성해야합니다. 시스템 전체만큼 쉽지는 않습니다. 여기 에서 설명을 볼 수 있습니다.
예를 들어 cat
Unix 도구를 사용하여이 행을 추가 할 수 있습니다. IP 주소가 192.168.1.44 인 로컬 네트워크에서 PC에 ping
을 보내려하고 remote_pc
로 해당 IP 주소를 참조하려고한다고 가정하십시오. 그런 다음 쉘에 써야합니다.
$ sudo cat 192.168.1.44 remote_pc
그러면 다음과 같이 핑을 만들 수 있습니다.
$ ping remote_pc