Unix 指南/解释/虚拟网络接口
外观
系统使用回环接口“lo0”与自身通信。大多数系统在启动时会自动配置它。与自身通信对于测试服务器以及任何服务器和客户端位于同一台计算机的情况很有用。(例如,一些电脑游戏拥有单人模式,其中服务器和客户端位于同一台计算机上。这些游戏使用“网络”,但由于只有一台计算机,它们使用回环接口。)
使用 **ifconfig** 命令检查接口的状态。它可能看起来像这样
$ ifconfig lo lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224 groups: lo inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 127 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5
您计算机的 IPv4 地址是“127.0.0.1”。这除了它在实际网络上的任何地址之外。事实上,每台计算机都将自己称为“127.0.0.1”,因此无法使用此地址在计算机之间进行通信。(一些笑话涉及一个人被赋予“127.0.0.1”作为攻击目标,然后开始破坏自己的计算机。)
如果您的系统正在运行 IPv6 堆栈,那么您的 IPv6 回环地址是“::1”。即使计算机没有连接到实际的 IPv6 网络,它也应该能够使用 IPv6 与自身通信。
您可能没有问题使用 **ping** 或 **ping6** ping 该接口。我们使用“ping -c3”和“ping6 -c3”ping 3 次;否则,它将每秒 ping 一次,直到您使用 **^C**(CTRL+C)中断。
$ ping -c3 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.206 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.094 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.096 ms --- 127.0.0.1 ping statistics --- 3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max/std-dev = 0.094/0.132/0.206/0.052 ms $ ping6 -c3 ::1 PING6(56=40+8+8 bytes) ::1 --> ::1 16 bytes from ::1, icmp_seq=0 hlim=64 time=0.284 ms 16 bytes from ::1, icmp_seq=1 hlim=64 time=0.118 ms 16 bytes from ::1, icmp_seq=2 hlim=64 time=0.116 ms --- ::1 ping6 statistics --- 3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max/std-dev = 0.116/0.173/0.284/0.079 ms
如果您想使用虚拟网络接口,通常必须使用“ifconfig create”来创建它。
您可以创建的某些接口:bridge, carp, gif, gre, lo, ppp, pppoe, sl, trunk, tun, vlan.