Я пытаюсь настроить сеть следующим образом:

=============================
DHCP fix addresses :
PC1 => 192.168.0.38
PC2 => 192.168.0.39

=============================
PC1:
eth0   inet addr:10.10.0.2     Bcast:10.255.255.255  Mask:255.0.0.0
wlan0  inet addr:192.168.0.38  Bcast:192.168.0.255   Mask:255.255.255.0

Destination     Gateway         Genmask         Flags Iface
0.0.0.0         192.168.0.254   0.0.0.0         UG    wlan0
10.0.0.0        0.0.0.0         255.0.0.0       U     eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     docker0
192.168.0.0     0.0.0.0         255.255.255.0   U     wlan0
=============================
PC2:  
wlan1  inet addr:192.168.0.39  Bcast:192.168.0.255   Mask:255.255.255.0
eth0   inet addr:10.10.0.4     Bcast:10.255.255.255  Mask:255.0.0.0

Destination     Gateway         Genmask         Flags Iface
0.0.0.0         192.168.0.254   0.0.0.0         UG    wlan1
172.17.0.0      0.0.0.0         255.255.0.0     U     docker0
192.168.0.0     0.0.0.0         255.255.255.0   U     wlan1
=============================

Итак, изначально мои два компьютера подключены через Wi-Fi к Интернету через мой интернет-бокс dhcp (фиксированный адрес). Плохая вещь об этом - то, что для передачи файлов все проходит через Wi-Fi. Поэтому я добавил кабель между компьютерами, и хотел бы использовать этот кабель для любой передачи файлов. Проблема в том, что я не могу даже пинговать между компьютерами!

С ПК1 я получаю:

traceroute 10.10.0.4
traceroute to 10.10.0.4 (10.10.0.4), 30 hops max, 60 byte packets
 1  10.10.0.2 (10.10.0.2)  2997.858 ms !H  2997.800 ms !H  2997.778 ms !H

Что это '!H 'означает? Это признак ошибки?

А с ПК2 я не могу добраться до ПК1 (так как нет маршрута => как я могу добавить маршрут? )

traceroute 10.10.0.2
traceroute to 10.10.0.2 (10.10.0.2), 30 hops max, 60 byte packets
 1  192.168.0.254 (192.168.0.254)  64.193 ms  69.008 ms  71.722 ms
 2  * * *
 3  * * *
 4  * * *

РЕДАКТИРОВАТЬ:

На ПК2:

ethtool eth0
Settings for eth0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Half 1000baseT/Full 
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Half 1000baseT/Full 
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Link partner advertised link modes:  10baseT/Half 10baseT/Full 
                                         100baseT/Half 100baseT/Full 
                                         1000baseT/Half 1000baseT/Full 
    Link partner advertised pause frame use: Symmetric
    Link partner advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: on
Cannot get wake-on-lan settings: Operation not permitted
    Current message level: 0x000000ff (255)
                   drv probe link timer ifdown ifup rx_err tx_err
    Link detected: yes

РЕДАКТИРОВАТЬ :

На ПК2

$ dmesg | grep eth0
[    5.293971] tg3 0000:04:00.0 eth0: Tigon3 [partno(BCM95723) rev 5784100] (PCI Express) MAC address 3c:4a:92:b2:a2:1e
[    5.293974] tg3 0000:04:00.0 eth0: attached PHY is 5784 (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[0])
[    5.293976] tg3 0000:04:00.0 eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[    5.293978] tg3 0000:04:00.0 eth0: dma_rwctrl[76180000] dma_mask[64-bit]
[    9.124499] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   10.758438] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   10.758756] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   13.183081] tg3 0000:04:00.0 eth0: Link is up at 1000 Mbps, full duplex
[   13.183091] tg3 0000:04:00.0 eth0: Flow control is on for TX and on for RX
[   13.183104] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

1 ответ1

0

Предполагая, что состояние вашей сети не изменилось по сравнению с диаграммой выше, у ПК2 нет маршрута обратно к ПК1. Вам нужно добавить маршрут к ПК2, но команда, которую вы попробовали в комментариях:

route add -net 10.10.0.0/255.0.0.0 gw 10.10.0.4

не то, что вы хотите. Эта команда имеет несколько ошибок:

  1. /255.0.0.0 - неправильный способ указать маску сети.
  2. gw 10.10.0.4 говорит PC2 отправить его обратно себе! Не то, что мы хотим.
  3. 10.10.0.0 не правильный сетевой идентификатор. Должно быть 10.0.0.0 .

Вот что мы хотим:

route add -net 10.0.0.0 netmask 255.0.0.0 dev eth0

Это говорит PC2 отправлять эти пакеты из вашего проводного интерфейса eth0.

Поскольку ПК1 уже имеет маршрут к ПК2 в соответствии с вашей схемой, это должно быть сделано.


С другой стороны, даже если у вас работает кабельное соединение, ваш файл все равно может не передаваться по кабелю вместо Wi-Fi. Это будет зависеть от того, как ваша программа пытается достичь другой стороны. Если вы укажете соответствующий IP-адрес (10.10.0.x), то проблем быть не должно, но если вы укажете имя хоста на машине, вступит в силу разрешение имен, и вы не сможете быть уверены, что используемый IP-адрес всегда будет 10.10.0.x а не адрес Wi-Fi 192.168.0.x Если это становится проблемой, вы можете посмотреть редактирование вашего файла hosts.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .