Rumah  >  Artikel  >  tutorial komputer  >  Kaedah pengikatan urutan pengenalan kad rangkaian linux

Kaedah pengikatan urutan pengenalan kad rangkaian linux

王林
王林ke hadapan
2024-03-08 19:07:20819semak imbas

Apabila menggunakan sistem Linux, hanyut kad rangkaian mungkin berlaku selepas memasang pemacu kad rangkaian tertentu atau program berkaitan.

Kaedah pengikatan urutan pengenalan kad rangkaian linux

Perwakilan yang mungkin adalah:

Selepas memasang pemacu kad rangkaian tertentu, susunan kad rangkaian mungkin diterbalikkan Sebagai contoh, port rangkaian yang disambungkan ke kabel rangkaian sebelum ini ialah eth0, tetapi selepas pemacu dipasang, ia mungkin menjadi eth1 atau nama lain.

(2) Nama kad rangkaian telah berubah Keadaan ini bukan perubahan daripada eth0 kepada eth1, tetapi perubahan yang sangat pelik, sebagai contoh, eth0 tidak dapat ditemui, dan terdapat kad rangkaian tambahan bernama __tmp3183921382193__

.

Situasi ini benar-benar boleh menjengkelkan. Kerana sesetengah orang mungkin perlu menggunakan arahan ifconfig |. grep eth untuk mendapatkan maklumat untuk kerja pembangunan Jika nama kad rangkaian mengelirukan, pasti akan terdapat ralat dalam program.

(3) Susunan kad rangkaian port optik dan kad rangkaian port elektrik tidak teratur atau berpalang.

Ringkasnya, matlamat kami adalah untuk dapat menentukan nama kad rangkaian tertentu sebagai peranti fizikal yang kami mahukan. Begini cara melakukannya:

Langkah pertama ialah mengenal pasti maklumat kad rangkaian

Untuk menggunakan kad rangkaian, anda perlu mengetahui nama mana yang sepadan dengan peranti fizikal yang mana Kaedahnya adalah seperti berikut: tarik kabel rangkaian dari suis dan sambungkannya ke kad rangkaian satu demi satu dari atas ke bawah anda hanya boleh menyambungkan satu kad rangkaian pada satu masa Selepas menyambung, lulus Gunakan perintah ethtool untuk menyemak sama ada kabel rangkaian disambungkan, seperti

[root@bunian ~]# ethtool eth0
Settings for eth0:
Supported ports: [ MII ]
Supported link modes: 10baseT/Half 10baseT/Full
 100baseT/Half 100baseT/Full
 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes:10baseT/Half 10baseT/Full
 100baseT/Half 100baseT/Full
 1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 2
Transceiver: external
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Link detected: yes

Saya melihat bahawa status eth0 disambungkan ke kabel rangkaian. Jika Pautan dikesan:tidak, ini bermakna kabel rangkaian tidak disambungkan.

Dengan cara ini anda boleh membezakan nama peranti dan melabelnya dengan baik.

Langkah 2: Dapatkan alamat MAC setiap kad rangkaian

ifconfig -a boleh melihat semua peranti rangkaian. Dapatkan alamat MAC setiap peranti melalui ifconfig -a |.

Contohnya:

[root@bunian ~]# ifconfig-a | grep HWaddr
eth0Link encap:EthernetHWaddr 00:30:48:7F:B5:CA
eth1Link encap:EthernetHWaddr 00:30:48:7F:B5:CB
eth2Link encap:EthernetHWaddr 00:04:23:A6:81:E0
eth3Link encap:EthernetHWaddr 00:04:23:A6:81:E1

Dapatkan alamat MAC setiap kad rangkaian.

Langkah 3: Ikat nama MAC dan kad rangkaian.

Kita semua tahu bahawa untuk sistem RedHat, fail konfigurasi kad rangkaian ialah:

/etc/sysconfig/network-scripts/ifcfg-ethX disimpan dalam X=0, 1, 2. . .

Contohnya:

[root@bunian]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# nVidia Corporation MCP55 Ethernet
DEVICE=eth0
ONBOOT=yes
HWADDR=00:30:48:7f:b5:ca
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=192.168.42.231
GATEWAY=192.168.42.1
BOOTPROTO=static
#NAMESERVER=202.106.0.20

Fail ini ialah fail konfigurasi untuk memulakan kad rangkaian. Contohnya, jika kita ingin menentukan nama peranti kad rangkaian alamat MAC MAC1 sebagai ethn, kemudian ubah suai fail

/etc/sysconfig/network-scripts/ifcfg-ethn

Tambah maklumat pengikatan alamat MAC dan konfigurasi nama di dalam

PERANTI=ethn

HWADDR=MAC1 (contohnya 00:30:48:7f:b5:ca)

Maklumat konfigurasi lain tidak akan terjejas. Selepas mengikat semua kad rangkaian, but semula sistem dan ia sepatutnya baik.

Perkara lain yang perlu diberi perhatian ialah fail surat-menyurat pemandu:

/etc/modprobe.conf

Untuk mengubah suai fail ini, pastikan peranti tertentu menggunakan pemacu yang sepadan dengannya, seperti:

cat /etc/modprobe.conf
alias eth0 forcedeth
alias eth1 forcedeth
alias scsi_hostadapter aic79xx
alias scsi_hostadapter1 sata_nv
alias scsi_hostadapter2 usb-storage
alias eth2 e1000
alias eth3 e1000

Jelaskan bahawa eth0 dan eth1 menggunakan pemacu forcedeth, dan eth2 dan eth3 menggunakan pemacu e1000.

Keadaan istimewa

Selepas pelayan menggantikan kad rangkaian, alamat MAC akan berubah Pada masa ini, selepas memulakan sistem Linux, eth0 dan eth1 asal bukan lagi fail konfigurasi kad rangkaian semasa, dan gesaan akan dipaparkan bahawa peranti eth0 lakukan. nampaknya tidak hadir.

Penyelesaian:

Hanya padamkan /etc/udev/rules.d/70-persistent-net.rules dan kemudian mulakan semula mesin, kerana fail ini menyimpan maklumat pengenalan kad rangkaian di bahagian bawah sistem, termasuk surat-menyurat antara ethX dan MAC . Padam dan mulakan semula Sistem pengendalian akan mengenali semula kad rangkaian sedia ada dan ia akan kembali normal.

Selain itu, jika fail konfigurasi eth0 dan eth1 asal mempunyai medan HWADDR, ia juga perlu dipadamkan.

Atas ialah kandungan terperinci Kaedah pengikatan urutan pengenalan kad rangkaian linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:mryunwei.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam