我有ISP提供商(Telenet)。谁通过DHCP公共IP提供DSL调制解调器。从该调制解调器,我们将RJ45电缆连接到24端口交换机。
现在在我们的本地网络中: - 从交换机端口1,我们有一个voip电话 - 从交换机端口2,我们有另一个voip电话
每个都有默认网关78.21.232.1和子网掩码255.255.240.0。但是不同的公共IP如78.21.235.x或78.21.232.x系列。
问题/混乱: 当我从本地网络发送数据包到我们的本地公共IP时,流量是否转到ISP默认网关?或者它直接在我们的Switch网络内?
但是我看到很多次我在那些voip电话诊断中丢失了数据包。让我完全糊涂了。
答案 0 :(得分:1)
您有几个地方可以查找有关数据包将去哪里的更多信息。第一个是您的路由表:
$ ip route
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.121 metric 1
169.254.0.0/16 dev eth0 scope link metric 1000
default via 192.168.0.1 dev eth0 proto static
这显示哪些接口(virbr0
,eth0
)将用于发往CIDR范围的数据包。底部的default
条目用于与一条更具体的路线不匹配的所有内容。由于我的局域网是192.168.0.0/16
,我希望发送到局域网上主机的所有数据包都不通过网关设备(最后一个条目中的via ...
)。
arp
工具还可以帮助您找到数据包的去向:
$ arp -n
Address HWtype HWaddress Flags Mask Iface
192.168.0.146 ether 00:06:7f:27:45:80 C eth0
192.168.0.1 ether 00:0f:66:4c:01:f8 C eth0
我的机器现在知道网络上的另外两个MAC地址,并且可以直接向它们发送数据包。如果HWaddress重复多个条目,它们可能位于网关的另一端,或者它是在单个NIC上通告多个IP地址的计算机。
我不确定如何帮助解决丢包问题;尝试移动交换机端口,交换电缆等。也许你有一个坏端口,这可能会不时发生。尝试隔离哪些机器对有丢包问题。 (并且不要尝试ping -f
到Mac OS X机器,它们会限制ICMP回复。一旦你了解它就很有趣......)