Июл 09 2012

Если в компьютере установлено несколько сетевых карт (а почему-то на линуксовых «машинах» чаще всего так и случается ;)), уточним, параметры какой из них нам нужно узнать/изменить, набрав в консоли:

sudo ifconfig

Результат:


eth0      Link encap:Ethernet  HWaddr 00:15:e6:2c:22:4c
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::215:e9ff:fe3c:324c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:91010354 errors:0 dropped:0 overruns:0 frame:0
          TX packets:102725308 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1924489319 (1.9 GB)  TX bytes:3772279218 (3.7 GB)
          Interrupt:16 Base address:0x6c00

eth1      Link encap:Ethernet  HWaddr 00:16:15:d1:d4:64
          inet addr:10.10.10.1  Bcast:10.10.15.255  Mask:255.255.248.0
          inet6 addr: fe80::216:17ff:fed2:d164/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4994120 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8675165 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:525966111 (525.9 MB)  TX bytes:2346938623 (2.3 GB)
          Interrupt:20 Base address:0xa400

Нас интересует сетевая карта eth0 с адресом 192.168.0.1. Чтобы посмотреть тип и скорость соединения на интерфейсе eth0, наберем в консоли:

sudo ethtool eth0

На выходе получим:


Settings for eth2:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: No
        Link partner advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
        Link detected: yes

Как видим, это гигабитная сетевая. Чтобы принудительно понизить на ней скорость до 100 Мбит/с в режиме Full Duplex и отключить автоопределение настроек, выполним простую команду:

sudo ethtool -s eth0 duplex full speed 100 autoneg off

Вернуть сетевую карту в гигабитный режим можно командой:

sudo ethtool -s eth0 duplex full speed 1000 autoneg off

PS: Планировал очень короткую заметку, но из-за «простыней» вывода немного «разрослась».

PPS: Тут @mmalchuk задал в твиттере «вопрос на засыпку»: как то же самое сделать не имея ethtool?
В общем, как-то так: mii-tool -F 100baseTx-FD eth0

Ну, и вариант совсем для гиков, на «чистом» линуксе :): ifconfig eth0 media 100baseTX mediaopt full-duplex

Заметки по теме: Коротко: как в Ubuntu переименовать сетевой интерфейс, Справочник команд в Linux > Сеть (LAN и WiFi)

Автор: Johnny Тэги: , , , , , , , , , ,

Блог саратовского админа

При использовании материалов сайта на других ресурсах прошу оставлять прямую ссылку на оригинал статьи.