Linux下网卡设备命名指定为eth方法及其原理
LINUX网卡重命名

LINUX网卡重命名
Linux体系中eth*被重定名为eth*_rename的重要缘故起因是变动了网卡设置。
这种操纵偶然会导致设置文件: /etc/udev/rules.d/70-persistent-net.rule 出现过错。
具体显露为文件中生涯着冗余项,或之前网卡的设置项。
我们可以按照如今网卡的MAC所在找到匹配项,
Linux体系中eth*被重定名为eth*_rename的重要缘故起因是变动了网卡设置。
这种操纵偶然会导致设置文件:
/etc/udev/rules.d/70-persistent-net.rule
出现过错。
具体显露为文件中生涯着冗余项,或之前网卡的设置项。
我们可以按照如今网卡的MAC所在找到匹配项,除此之外的就是过错记实了。
1. 把之前找到的过错记实删掉,并把出现紊乱的网卡设置文件删掉(如/etc/network/interfaces文件中的对应项或/etc/sysconfig/network-scripts/ifcfg-eth0),记得备份。
2. 完成如上操纵后,重启操纵体系,模块会重新加载。
此时体系是找不到该网卡的设置文件的,也就不会去设置它。
我们把1. 中备份的文件规复,重启网络。
这时本来的eth0应当就返来了。
Linux网卡名改eth0方法

Linux网卡名改eth0方法
步骤一
root用户下查看网卡信息ifconfig –a
如果网卡名是ethX的执行步骤二,否则从步骤三开始执行。
(X表示任意数字,步骤三开始ethX表示物理网卡名可以是其他名字eg:p3p1、em1等)
步骤二
下面先把ethX宕掉
ifdown ethX
找到70-persistent-net.rules文件
cd /etc/udev/rules.d
ls -l 70*
修改70-persistent-net.rules这个文件
Vi 70-persistent-net.rules
NAME="ethX"
改成(只需该name)
NAME="eth0"
保存退出。
步骤三
然后进入network-scripts这个配置目录
cd/etc/sysconfig/network-scripts
ls -l ifcfg*
修改网卡文件名称
mv ifcfg-ethX ifcfg-eth0
ls -l ifcfg*
编辑网卡配置文件
vi ifcfg-eth0
将其中的DEVICE=ethX改成eth0,不需要修改MAC地址。
并把uuid删除(如果没有就不用)
保存并退出。
步骤四
重启新网卡并验证
ifup eth0
Service network restart
这个时候是启不来的,需要重启机器使修改生效。
重启服务器
reboot
重启之后如果发现网络没有自动连接的需要再次重启
如果原先是eth系列的网卡名称则已经修改过来,网络正常。
linux上网etho解决网卡驱动的问题

linux上网etho解决网卡驱动的问题注意:本文是在linux系统完全安装的条件下进行的。
有的朋友安装linux是定制安装,因此可能会出现某些必要的软件包没有的情况。
这就需要自己解决了。
不难的呵呵一查看网卡是否安装1 ifconfig -a 如果没有ethX 就很可能是网卡没有安装,至少可以断定网卡没有自动加载。
如果这时输入ifconfig eth0 xxx.xxx.xx.xx 系统会提示没有eth0 该设备。
2 可以用 dmesg | grep ethx 来查看系统能不能检查到该模块。
如果能会返回ATL2: eth0 NIC Link is up <100M full duplex>否则没反应3 用lsmod 查看开机时是否有加载如果有的,会有atl2 或eg3之类的4,查看网卡驱动安装的目录#uname -r 查看内核版本#cd lib/modules/'uname -r'/kernel/drives/net 网卡驱动安装在该目录下#ls显示相关的驱动,如果没有就要手动安装了二,安装驱动1 查看你的驱动类型。
我切换到2003系统查看网卡型号。
2 网上下载驱动。
我下载的地址如下:/downloads/downloadsView.aspx?Langid=3&PNid=4&PFid =4&Level=5&Conn=4&DownTypeID=3&GetDown=false&Dow nloads=true#RTL8110S-32/RTL8169S-32/RTL8110SB(L)/RTL8169SB(L)<br>RTL8110SC(L)/RTL8169SC(L)3 通过U盘拷贝到linux中。
1)#modprobe usb-storage 必须的命令好像这样才能读出U 盘2) # mount /dev/sdb? /mnt (?为几可以用fdisk -l查看一下,我的是sda)注意:有的U盘可能linux无法读出。
linux(凝思) 网卡绑定方法

linux系统里面有一个内置的nameif的命令可以实现网卡绑定的功能
方法:可以写一个脚本,然后将脚本设置为开机启动即可。
参考如下:
(1) 首先写一个脚本,脚本路径为/etc/rc.d/init.d,脚本内容如下(针对两块网卡):
#cat /etc/rc.d/init.d/nameif.sh
#!/bin/sh
/sbin/nameif -s a0 00:E0:81:D3:30:74
/sbin/nameif -s a1 00:E0:81:D3:30:76
/sbin/nameif -s eth0 00:E0:81:D3:30:74
/sbin/nameif -s eth1 00:E0:81:D3:30:76
注释:此处的MAC为举例用的,应根据自己机器的实际情况来编写脚本。
(2) 写完脚本后,给脚本加权限
chmod 777 /etc/rc.d/init.d/nameif.sh
(3) 然后在对应的启动级别里做一个开机启动的连接,注意,nameif脚本需要执行在
network网络启动之前,否则无法生效
#cd /etc/rc.d/rc3.d
#ln -s /etc/rc.d/init.d/nameif.sh S016nameif
#cd /etc/rc.d/rc5.d
#ln -s /etc/rc.d/init.d/nameif.sh S016nameif
注释:由于内核里面事先记录了eth[0-1*]的网卡名字信息,若直接对eth*进行绑定的话,会存在网卡名字占用的问题,由此会造成设置无法生效。
所有上面所写的脚本里面首先将网卡的MAC地址赋给其他的名字,然后在重新指定给eth*,即可解决这个问题。
linux基础-系统网卡网关配置参数说明

linux基础-系统⽹卡⽹关配置参数说明⼀.系统⽹卡配置参数说明 linux系统⽹卡配置⽂件⼀般在/etc/sysconfig/network-scripts/ifcfg-eth0⽬录下: 有些系统⽹卡会以em开头:⽐如centos7系统 详细参数解释说明:· ⽹卡配置⽅法:推荐使⽤ifdown ifup进⾏指定⽹卡的重启操作: ifdown eth0 && ifup eth0 ---》重启eth0⽹卡 ifup eth0 ---》启动eth0⽹卡 重启所有⽹卡(慎⽤): service network restart⼆.系统默认⽹关配置说明:三.系统⽹卡多个地址配置: IP别名⽅式配置多地址ifconfig eth0:1 10.0.0.100/24 up <- 配置别名IP,即虚拟IP(VIP),并启⽤虚拟IPifconfig eth0:X down <- 停掉指定别名IP配置 辅助IP⽅式配置多地址ip addr add 10.0.0.13/24 dev eth0:1ip addr add 10.0.0.14/24 broadcast 10.0.0.255 dev ethxip add del 10.0.0.10/24 dev ethx四.⽹络地址信息获取命令: 查看⽹络状态常⽤命令: ifconfig命令:centos 5 6系统中常⽤⽤于显⽰⽹路配置信息 ip命令:centos7系统⽤于显⽰⽹路配置信息 route命令:查看路由配置信息route -nhostname(uname -n)显⽰主机名称信息;也可以利⽤hostname显⽰ip地址配置信息hostname -Inetstat(ss-centos7)显⽰主机的端⼝与服务⽹络连接状态,ESTABLISHED表⽰建⽴连接的状态,数量即表⽰⽹络连接数 lsof 显⽰主机的端⼝与服务⽹络连接状态。
五.⽹络连接异常常⽤命令: ping命令-c<count> 设置完成要求回应的次数;默认会⼀直长ping-f 表⽰极限ping,ping过程中不显⽰任何信息,效率更⾼-i<interval> 指定收发信息的间隔时间-q 不显⽰指定执⾏过程,开头和结尾的相关信息除外-s <数据包⼤⼩> 设置数据包的⼤⼩tracroute/tracert命令telnet命令nmap命令。
ifup eth0的原理

ifup eth0的原理ifup eth0的原理是什么呢?在深入探讨之前,我们需要先了解一些基本概念。
ifup是一个Linux命令,用于启动网络接口。
而eth0是一个网络接口的名称,通常用于指代以太网接口。
那么,ifup eth0到底是如何工作的呢?我们需要明确一点,网络接口是计算机与网络之间进行通信的纽带。
通过网络接口,计算机可以收发数据包,实现与其他设备的通信。
每个网络接口都有一个唯一的名称,以便操作系统能够识别和管理它们。
在Linux系统中,ifup eth0的目的是启动名为eth0的网络接口。
具体而言,这意味着该接口将会被激活,以便开始进行网络通信。
接下来,让我们来详细了解一下ifup eth0的原理。
当我们执行ifup eth0命令时,操作系统会执行一系列操作来启动该网络接口。
首先,系统会检查网络接口的配置文件,通常位于/etc/network/interfaces。
在该配置文件中,我们可以指定网络接口的各种参数,如IP地址、子网掩码、网关等。
接着,系统会根据配置文件中的设置来进行网络接口的初始化。
这包括分配IP地址、设置子网掩码、配置路由表等操作。
这些设置将确保网络接口能够正常地与其他设备进行通信。
一旦网络接口初始化完成,系统就会发送一个DHCP请求,以获取动态分配的IP地址。
DHCP(动态主机配置协议)是一种用于自动分配IP地址的协议。
通过DHCP,计算机可以自动获取可用的IP 地址,而无需手动进行配置。
如果DHCP请求成功,系统将获得一个有效的IP地址,并将其分配给eth0接口。
此时,网络接口已经准备就绪,可以开始进行网络通信了。
如果我们在配置文件中指定了静态IP地址,系统将会跳过DHCP 请求的步骤,直接将配置文件中的IP地址分配给eth0接口。
这种方式适用于那些不需要动态分配IP地址的场景。
总结起来,ifup eth0命令的原理是通过初始化网络接口并根据配置文件中的设置进行网络参数的配置,从而使得该接口能够正常地进行网络通信。
修改eth
eno16777736改eth0或eno16777728改eth0刚开始安装完RHEL7,网卡的名称是这样子的:下面开始修改:第一步:1、输入vi /etc/sysconfig/network-scripts/ifcfg-eno16777728命令(我的虚拟机是eno16777728,其他的修改方法一样)2、把其中的NAME改为eth0,(按A开启编辑,按esc后输入:x保存退出编辑)第二步:输入cd /etc/sysconfig/network-scripts/ 然后输入mv ifcfg-eno16777728 ifcfg-eth0第三步:先输入“vi /etc/sysconfig/grub”命令,然后在”GRUB_CMDLINE_LINUX”中加入”net.ifname=0 biosdevname=0”(按A开启编辑,按esc后输入:x保存退出编辑)第四步:输入“grub2-mkconfig -o /boot/grub2/grub.cfg”命令刷新第五步:输入:“touch /tec/udev/rules.d/70-persistent-net.rules”第六步:找到网络设置中的mac地址并复制:在命令窗口中输入“vi /tec/udev/rules.d/70-persistent-net.rules”然后按下面图片编辑:注:画红线为mac地址(按A开启编辑,按esc后输入:x保存退出编辑)内容为:SUBSYSTEM==”net”,ACTION==”add”,DRIVERS==”?*”,ATTR{address}==”ma地址”,ATTR{type}==”1”, Kernel==”eth*”,NAME=”eth0”最后一步重启系统.。
route-eth0的写法
route-eth0的写法route-eth0是一个网络命令,用于在Linux系统中配置网络路由表中以太网卡eth0的路由规则。
在本文中,我们将讨论route-eth0的写法,包括命令语法、参数选项及其功能,以及一些常见的使用示例。
route-eth0是一个基于命令行的工具,它可以让我们通过配置路由规则的方式来控制数据包在网络中的传输路径。
在使用route-eth0命令之前,我们需要先了解一些基本的概念。
在计算机网络中,路由是指将数据包从源主机发送到目标主机的过程。
在进行路由时,网络设备需要根据不同网络的规则来选择合适的路径进行数据包的传输。
在Linux系统中,路由规则存储在一个被称为路由表的数据结构中。
我们来看一下route-eth0命令的基本语法:route-eth0 [选项]命令[目标主机] [命令行选项]选项:- add:用于向路由表中添加一条新的路由规则。
- del:用于删除路由表中的一条路由规则。
- netmask MASK:指定目标主机的子网掩码。
- gw网关地址:指定目标主机的网关地址。
- metric数值:指定路由规则的度量值,用于选择最佳的传输路径。
- dev网卡名称:指定路由规则所使用的网络接口。
-选项:其他可选项,如拒绝某个目标主机的访问。
下面是一些常见的使用示例:1.向路由表中添加一条新的路由规则:route-eth0 add -net 10.0.0.0 netmask 255.0.0.0 gw192.168.0.1 dev eth0这条命令将添加一条针对网络10.0.0.0/8的路由规则,指定该网络的网关地址为192.168.0.1,通过eth0接口进行传输。
2.删除路由表中的一条路由规则:route-eth0 del -net 10.0.0.0 netmask 255.0.0.0 gw192.168.0.1 dev eth0这条命令将删除路由表中与网络10.0.0.0/8相关的路由规则。
linuxifconfig命令使用详解
linuxifconfig命令使⽤详解Linux下⽹卡命名规律:eth0,eth1。
第⼀块以太⽹卡,第⼆块。
lo为环回接⼝,它的IP地址固定为127.0.0.1,掩码8位。
它代表你的机器本⾝。
1、ifconfig是查看⽹卡的信息。
ifconfig [Interface]Interface是可选项,如果不加此项,则显⽰系统中所有⽹卡的信息。
如果添加此选项则显⽰所指定的⽹卡信息例如:ifconfig eth0eth0 Link encap:EthernetHWaddr 00:0C:29:F3:3B:F2inet addr:192.168.0.10 Bcast:192.168.0.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:78 errors:0 dropped:0 overruns:0 frame:0TX packets:104 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:100RX bytes:11679 (11.4 Kb)TX bytes:14077 (13.7 Kb)Interrupt:10 Base address:0x1080我们可以看到第⼀⾏:连接类型:Ethernet(以太⽹)HWaddr(硬件mac地址)第⼆⾏:⽹卡的IP地址、⼦⽹、掩码第三⾏:UP(代表⽹卡开启状态)RUNNING(代表⽹卡的⽹线被接上)MULTICAST(⽀持组播)MTU:1500(最⼤传输单元):1500字节第四、五⾏:接收、发送数据包情况统计第七⾏:接收、发送数据字节数统计信息。
2、ifconfig 配置⽹卡语法:ifconfig [⽹络设备] [down up -allmulti -arp -promisc] [add<地址>][del<地址>] [<hw<⽹络设备类型><硬件地址>] [io_addr<I/O 地址>] [irq<IRQ地址>] [media<⽹络媒介类型>] [mem_start<内存地址>] [metric<数⽬>] [mtu<字节>] [netmask<⼦⽹掩码>] [tunnel<地址>] [-broadcast<地址>] [-pointopoint<地址>] [IP地址]配置⽹卡的IP地址ifconfig eth0 192.168.0.1 netmask 255.255.255.0在eth0上配置上192.168.0.1 的IP地址及24位掩码。
linux中ens33工作原理
linux中ens33工作原理
ens33是一种网络接口的名称,通常指的是以太网网卡。
在Linux中,每个网络接口都有一个名称,以此区分不同的网络接口。
ens33的工作原理是通过网卡硬件控制器与网络传输信息。
当一个应用程序请求网络服务时,它通过网卡将请求信息发送到网络,然后等待服务器端的响应。
网卡硬件控制器会负责将数据包传输到网络上并接收响应数据包返回给应用程序。
具体来说,ens33的工作原理包括以下几个方面:
1.网卡通过物理线缆连接到计算机的主板上;
2.网卡通过驱动程序与操作系统内核进行通信,以实现数据传输和网络连接的控制;
3.网卡接收到从应用程序发送的数据包后,会将数据包格式化并封装成网络数据帧,然后交给物理层进行传输;
4.当网络数据帧到达目的主机后,网卡将其接收并解析出数据包,然后将数据包发送到操作系统内核中进行处理;
5.操作系统内核根据协议规则进行数据包的转发和处理,然后返回响应数据包给
网卡;
6.网卡将响应数据包封装成数据帧并通过物理线缆发送到发送方。
总之,ens33是以太网网卡的一个名称,通过该网卡实现网络数据的传输和连接控制。
它是计算机和网络之间的桥梁,是实现网络通信的重要组成部分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四、内核启动参数biosdevnane、net.ifnames
默认就是内核启动参数没有biosdevname 也没有net.ifnames 参数(其实默认是net.ifnames=1,biosdevname=0)这种情况下就按照一 中进行网卡命名;eno-ens-enp的方式逐个匹配。但是如果使能了biosdevname.则会使用biosdevname的命名 step1没有命名的网卡;
强调:这个step顺序是在我们没有自定义自己的rules的前提下,如果用户自定义了自己的rules,则用户自定义为优先级最高;
二、scheme次序
上面step4中提到,按照指定的scheme规则,这个规则是什么呢?
首先说step3中,提到按照网卡的不同属性命名,系统识别网卡有好几种维度:
比如 BIOS provided index numbers for on-board devices (example: eno1),
三、用户自定义网卡名称
1、在用户没有自定义rules文件前提下,step1中的网卡命名方式也可认为是 一种用户自定义的网卡命名,即在/etc/sysconfig/network-scripts/ifcfg-xx 文件,xx就是这个网卡名称,文件内容中体现MAC_ADDRESS、NAME,这种情况下,则会按照配置文件中指定的名称来命名网卡;
step3, 依据/lib/udev/rules.d/75-net-description.rules,将udev工具会根据device属性将填写网卡的属性命名,可能一个网卡会有多个维度的名称哦;
step4,udev 根据step3中的赋值,按照指定的scheme规则,去给在step1 step2中没有命名的网卡命名;
而网上也有为那些依然想使用ethX方式命名的提供了策略。比如在内核启动参数里增加biosdevname=0 net.ifnames=0;
但是这里忽略了一个问题,那就是为什么centos7不再使用以前的ethX方式?根本是因为之前ethX方式是不确定的,每次启动可能都不同(如果没有用户自定义网卡名称的前提下);
某些系统总是以enp开头的方式来命名网卡设备,单当我们需要将网卡命名为eth开头时需要怎么做呢?
要解决此问题,首先我们需要熟悉Linux下的5种命名规则。
一、命名规则策略
规则1:
对于板载设备命名合并固件或BIOS 提供的索引号,如果来自固件或 BIOS 的信息可读就命名要么是p开头;
所以大家提供的这种办法其实是不好的;
三、核心流程
核心流程:明确一点是,linux内核启动过程中,会默认给网卡以ethX方式随机命名,然后再通过systemd去rename成其他名称。关键字,rename!
一、如何rename?
默认rename流程:
按照如下顺序执行udev的rule
1./usr/lib/udev/rules.d/60-net.rules
step2 依据/usr/lib/udev/rules.d/71-biosdevname.rules,如果biosdevname使能了(安装了biosdevname这个包,且内核启动参数显式设置为1),且网卡没有在step1中定义,则按照biosdevname命名规则rename网卡;(注意,如果没有安装biosdevname这个包,就没有这个文件)
同一个网卡通常同时具有多个维度的名称,systemd在选取的时候,按照有先后次序,使用先命中的;
顺序可以简单理解为(eno1-ens1-enp1)
eth2这个网卡,scheme名称有3个,如果systemd自选,会使用哪个?ens5f0.(那这个为什么是/sys/class/net/eth2 而不是/sys/class/net/ens5f0 ,那是因为自定义的缘故;)
2./usr/lib/udev/rules.d/71-biosdevname.rules
3./lib/udev/rules.d/75-net-description.rules
4./usr/lib/udev/rules.d/80-net-name-slot.rules
step1 依据/usr/lib/udev/rules.d/60-net.rules, 查看是否有ifcfg-xx配置文件(路径在/etc/sysconfig/network-scripts/),是否有定义了指定MAC地址的配置文件(ifcfg-xx ,xx必须和配置文件的内容DEVICE一致),如果有,则命名改网卡;
比如:BIOS provided PCI Express hotplug slot index numbers (example: ens1)
比如:physical location of the connector of the hardware (example: enp2s0),
比如:mac地址
规则5:
使用传统的方案,如果所有的方案都失败,使用类似eth0 这样的样式。
二、网卡eth0命名
从centos7开始,系统默认的网卡命名有已经不是我们熟悉的ethX方式了,细心的同学会留意到一些比如ens enp等开头的网卡名称,简单了解,可以解释为centos7开始,网卡命名会根据网卡的硬件信息,插槽位置等有关;
规则2:
命名合并固件或BIOS 提供的 PCI-E 热插拔口索引号,比如 ens1,如果信息可读就使用,否则使用规则3。
规则3:
命名合并硬件接口的物理位置,比如enp2s0,可用就命名,失败直接到方案5。
规则4:
命名合并接口的MAC 地址,比如 enx78e7d1ea46da,默认不使用,除非用户选择使用此方案。