有没有这样的时候?你刚装了个虚拟机,想让它连上网,结果在网络设置里看到 “tun 虚拟网卡”“tap 虚拟网卡” 这俩词,瞬间懵了 —— 这俩到底是啥?为啥虚拟机非得用它们?选哪个才不会出错?新手碰到这种情况,多半手忙脚乱,生怕点错了把虚拟机搞崩。今天小编就围着这三个问题说,保证说清楚,让新手也能看明白。
tun 虚拟网卡到底是个啥?为啥虚拟机里会用到它?
咱们先搞明白最基础的:tun 虚拟网卡,它不是真的网卡,看不见摸不着,是电脑系统自己 “造” 出来的一个工具。
它主要干的活儿,是帮着处理网络里的 “数据包”。你可以把数据包想成一个个小信封,tun 就像个邮局分拣员,收到信封后,按上面的地址(IP 地址)分类,再送到该去的地方;外面寄来的信封,也得先经过它,再交给虚拟机里的软件。
那为啥虚拟机要用它呢?因为虚拟机是 “假” 的电脑,没有真实的网卡,想连网就得靠这种虚拟的工具。我们在使用虚拟机时,要是想让它既能上网,又和主机的网络隔离开(比如怕病毒传到主机),tun 虚拟网卡就能派上用场,它能给虚拟机开个单独的 “通道”,数据只在这个通道里走。
有朋友可能会问,不用它行不行?倒也不是不行,但没它的话,虚拟机要么连不上网,要么就和主机共用一个网络,隔离效果差很多,不安全。
在虚拟机里用 tun 虚拟网卡,具体步骤是啥?哪里容易出错?
知道了它是啥,再说说在虚拟机里咋用。不同的虚拟机软件,步骤有点不一样,但大方向差不多,一起往下看吧!
以 VMware 为例:
第一步,打开虚拟机设置,找到 “网络适配器” 选项,点进去后,在 “网络连接” 里选 “自定义”,这时候就能看到 tun 相关的选项了(一般叫 “VMnet” 加数字,后面带 tun 标识)。
第二步,选好之后,点 “确定” 保存,然后启动虚拟机。进入系统后,打开网络设置,看看有没有自动获取到 IP 地址,有的话就说明成了。
第三步,要是没获取到 IP,别急,手动设置一下。IP 地址得和主机在同一个网段(比如主机是 192.168.1.100,虚拟机就设 192.168.1.101),子网掩码、网关跟着主机填就行。
小编上次在 VMware 里配置时,就忘了手动设 IP,结果虚拟机连不上网,折腾了半小时才发现问题,所以这一步千万别省。
要是用 VirtualBox,步骤稍有点不同:
先在 VirtualBox 的 “全局设置” 里找到 “网络”,新建一个 “仅主机网络”,类型选 tun;然后回到虚拟机的设置,把网络适配器绑定到这个新建的网络上,启动虚拟机后,同样检查 IP 是否正常。
有新手反馈,说找不到 tun 选项,这时候看看虚拟机软件是不是最新版本,老版本可能不支持,升级一下多半就有了。
不用 tun 虚拟网卡会咋样?有没有替代方案?
有人可能觉得麻烦,不想用 tun,那会出现啥情况呢?
最常见的是网络隔离失效。比如你在虚拟机里装了测试软件,带了病毒,不用 tun 的话,病毒可能顺着网络跑到主机里,这就得不偿失了。
还有就是网络不稳定。不用 tun 的话,虚拟机可能直接用主机的网络,主机一断网,虚拟机也跟着断;而且多人用同一台主机的虚拟机时,容易抢带宽,卡得不行。
那有没有替代方案?tap 虚拟网卡也算一个,但它和 tun 不一样,后面咱们会说。另外,有些虚拟机软件有 “桥接模式”,不用虚拟网卡也能连网,但桥接模式下,虚拟机和主机在同一个局域网,隔离效果差,和不用 tun 差不多。
所以小编觉得,要是你在乎安全和稳定,还是老老实实用 tun 吧,稍微麻烦点,但省心。
tun 和 tap 放一起,新手该咋选?选错了会咋样?
最后说说大家最关心的:tun 和 tap,哪个更适合新手?
先看区别:tun 主要和 IP 地址打交道,处理的是 “三层数据”,简单说就是管数据从哪个 IP 来、到哪个 IP 去,设置起来步骤少,出错概率低。
tap 呢,更像真实的网卡,和 MAC 地址打交道,处理 “二层数据”,管的是设备之间的直接通信(比如虚拟机和主机互相传文件),但设置起来要调的参数多,比如 MAC 地址绑定、网段划分,新手很容易弄错。
有位老用户分享:“刚开始用 tap,总因为 MAC 地址设错,导致虚拟机和主机 ping 不通,换成 tun 后,按步骤填个 IP 就好了,省了好多事。”
那选错了会咋样?新手要是选了 tap,可能会遇到网络不通、设备冲突,甚至虚拟机死机;选 tun 的话,就算设置简单,最多就是网速慢点,不会出大问题。
所以小编的建议是,新手优先选 tun,等熟悉了虚拟机和网络原理,再试试 tap 也不迟。毕竟咱们先求 “能用”,再求 “精通”,对吧?
其实不管 tun 还是 tap,都是帮咱们用好虚拟机的工具,不用怕它们。多动手试几次,遇到问题搜搜教程,慢慢就熟练了。小编刚开始也老弄错,现在配置起来顺得很。希望这篇能帮到你,要是你有啥好用的技巧,也欢迎留言分享。