>  기사  >  운영 및 유지보수  >  리눅스 탭이 뭐야?

리눅스 탭이 뭐야?

青灯夜游
青灯夜游원래의
2023-04-20 16:54:313159검색

Linux에서 TAP는 "Tunneling Traffic Access Point"를 의미하며 Linux에서 사용되는 가상 네트워크 카드 기술로, 애플리케이션에 보안 네트워크 연결을 제공할 수 있습니다. TAP 네트워크 인터페이스를 이용하여 가상 네트워크를 구현할 수 있습니다. 이 가상 네트워크는 실제 네트워크 조건을 설정하지 않고도 소프트웨어에서 애플리케이션을 테스트할 수 있도록 실제 네트워크와 유사한 환경을 제공할 수 있습니다.

리눅스 탭이 뭐야?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

Linux tap이란 무엇입니까

Linux의 TAP 네트워크 인터페이스에 대한 자세한 설명은 Linux 네트워크 관리에서 매우 중요한 부분으로 가상 네트워크 구축, 네트워크 시뮬레이션, 네트워크 트래픽 관리 및 구현에 사용할 수 있습니다. 보안 네트워크 기능 등. 이 기사에서는 TAP 네트워크 인터페이스의 기본 원리, 네트워크 관리에 이를 사용하는 방법, 이더넷과의 차이점 및 더 많은 애플리케이션 시나리오를 소개합니다.

TAP(터널링 트래픽 액세스 포인트)은 Linux에서 사용되는 가상 네트워크 카드 기술로, 애플리케이션에 보안 네트워크 연결을 제공할 수 있습니다. TAP의 설계는 실제 이더넷 카드와 마찬가지로 네트워크에 매핑된 다음 네트워크 데이터 패킷을 보내고 받을 수 있다는 것입니다. TAP 네트워크 인터페이스는 가상 네트워크를 구축하고, 네트워크를 시뮬레이션하고, 네트워크 트래픽을 관리하고, 보안 네트워크 기능을 구현하는 데 사용할 수 있습니다.

Linux는 TAP 네트워크 인터페이스를 통해 두 대 또는 여러 대의 컴퓨터 간에 직접 데이터 패킷 전송을 실현할 수 있으며, 여러 라우터를 통해 네트워크 격리를 달성하여 데이터를 안전하게 전송할 수도 있습니다. TAP 네트워크 인터페이스를 사용하면 사용자는 특정 규칙에 따라 사용자에게 네트워크 서비스를 제공할 수 있을 뿐만 아니라 네트워크 보안을 보장하기 위한 제어를 통해 네트워크 트래픽을 관리할 수도 있습니다.

TAP 네트워크 인터페이스를 사용하여 가상 네트워크를 구현합니다. 이 가상 네트워크는 실제 네트워크 조건을 설정하지 않고도 애플리케이션이 소프트웨어에서 테스트할 수 있도록 실제 네트워크와 유사한 환경을 제공할 수 있습니다. TAP 네트워크 인터페이스는 또한 네트워크 트래픽을 관리하고, 네트워크에서 불필요한 데이터 패킷을 필터링하고, 네트워크 보안을 보호하고, 네트워크 속도 및 네트워크 품질에 대한 의존도를 줄이는 데 도움이 됩니다.

이더넷 기술과 비교하여 TAP 기술은 네트워크 보안, 네트워크 격리, 네트워크 프록시 사용 등 Linux 시스템에서 가상 네트워크를 구축하는 데 더 적합합니다. TAP는 이더넷과 함께 사용하여 네트워크 리소스의 이중 기능을 활용할 수도 있습니다.

위 소개에서 볼 수 있듯이 TAP 네트워크 인터페이스는 Linux 네트워크 관리에 널리 사용되며 가상 네트워크 구축, 네트워크 시뮬레이션, 네트워크 트래픽 관리 및 보안 네트워크 기능 구현에 사용할 수 있습니다.

간단히 말하면, TAP 네트워크 인터페이스는 Linux 시스템에서 매우 일반적으로 사용되는 네트워크 기술입니다. 이는 여러 컴퓨터를 연결하는 데 사용될 수 있을 뿐만 아니라 가상 네트워크를 구축하여 네트워크 보안 및 네트워크 격리를 달성하는 데에도 사용할 수 있습니다. 인터넷 자원 활용.

tap과 tun의 차이점:

tap은 네트워크 OSI 모델의 두 번째 계층(데이터 링크 계층)에 위치하고 tun은 네트워크의 세 번째 계층에 위치합니다. 탭에 대한 간략한 설명은 다음과 같습니다.

Linux 호스트에서 Tap 연습

Linux 명령줄을 사용하여 탭을 작동하려면 먼저 Linux에 tun 모듈이 있어야 합니다(Linux는 tun 모듈을 사용하여 tun 및 tap을 구현합니다).

확인 방법은 다음과 같습니다.

# 如果使用命令 modinfo tun,有输出的话,就说明具有tun模块
[root@public ~]# modinfo tun
filename:       /lib/modules/3.10.0-693.11.1.el7.x86_64/kernel/drivers/net/tun.ko.xz
alias:          devname:net/tun
alias:          char-major-10-200
license:        GPL
author:         (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
description:    Universal TUN/TAP device driver
rhelversion:    7.4
srcversion:     4E9F57A6269CFD0F4BE4021
depends:
intree:         Y
vermagic:       3.10.0-693.11.1.el7.x86_64 SMP mod_unload modversions
signer:         CentOS Linux kernel signing key
sig_key:        61:B8:E8:7B:84:11:84:F6:2F:80:D6:07:79:AB:69:2A:49:D8:3B:AF
sig_hashalgo:   sha256
[root@public ~]#

Linux 버전에 tun 모듈이 있는 경우 해당 모듈이 로드되었는지 확인해야 합니다. 확인 방법은 다음과 같습니다.

# 使用该命令检查后,无回显,表示当前未加载该模块
[root@public ~]# lsmod | grep tun
[root@public ~]#
# 使用该命令加载该模块
[root@public ~]# modprobe tun
[root@public ~]#
[root@public ~]# lsmod | grep tun
tun                    31621  0

모듈을 로드한 후에도 다음을 수행해야 합니다. Linux에 tun/tap tunctl을 작동하는 명령줄 도구가 있는지 확인하세요.

# 可以使用yum直接安装,如果yum源中没有的话,可以去阿里源的网站中下载rpm包然后安装。
[root@public ~]# yum -y install tunctl

tun 모듈과 tunctl을 사용하면 탭 장치를 만들 수 있습니다. 명령:

[root@public ~]# tunctl -t tap_test
Set &#39;tap_test&#39; persistent and owned by uid 0
[root@public ~]# ip link list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether fa:16:3e:08:0b:39 brd ff:ff:ff:ff:ff:ff
3: tap_test: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
    link/ether ce:cc:18:91:1e:ba brd ff:ff:ff:ff:ff:ff
[root@public ~]#

IP 주소 추가:

[root@public ~]# ip addr add local 192.168.10.100/24 dev tap_test
[root@public ~]# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:08:0b:39 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.93/24 brd 192.168.10.255 scope global noprefixroute dynamic eth0
       valid_lft 75733sec preferred_lft 75733sec
    inet6 fe80::f816:3eff:fe08:b39/64 scope link
       valid_lft forever preferred_lft forever
3: tap_test: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether ce:cc:18:91:1e:ba brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.100/24 scope global tap_test
       valid_lft forever preferred_lft forever
[root@public ~]#

관련 권장 사항: "Linux 비디오 튜토리얼"

위 내용은 리눅스 탭이 뭐야?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.