(转)linux配置网卡的命令
linux配置网卡的命令
原文:http://blog.51cto.com/lanxianting/1754923
1、配置命令
如果一台服务器需要通外网,能被远程连接,就得给这个台服务器配置ip,子网掩码和网关和DNS,下面就来说下网卡的配置方式及各种命令。
配置方式:
1、静态指定,ifconfig、ip
ifconfig命令:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
[root@magedu ~] # ifconfig eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.18.254.97 netmask 255.255.0.0 broadcast 172.18.255.255 inet6 fe80::20c:29ff:fe7c:7e0b prefixlen 64 scopeid 0x20<link> ether 00:0c:29:7c:7e:0b txqueuelen 1000 (Ethernet) RX packets 4402 bytes 722088 (705.1 KiB) RX errors 0 dropped 26 overruns 0 frame 0 TX packets 103 bytes 12847 (12.5 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 // 环回地址 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 2 bytes 98 (98.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2 bytes 98 (98.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
直接ifconfig命令可以查看当前启用的网卡及IP地址,子网掩码,mac地址等。后面加个-a选项可以显示出当前服务器上所有的网卡信息,包括未启用的。
1
2
3
4
5
|
[root@magedu ~] # ifconfig eno33554960 192.168.0.100/24 up eno33554960: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::20c:29ff:fe7c:7e15 prefixlen 64 scopeid 0x20<link> |
用法: ifconfig ethX IP/MASK up|down
ifconfig后面直接接网卡名称 IP地址和掩码可以直接配置IP,并且是立即生效的,但不是永久生效。
也可以直接ifup ethX /ifdown ethX 启动网卡/关闭网卡。
1
2
3
4
|
[root@magedu ~] # ifconfig eno33554960 promisc //开启混杂模式 [root@magedu ~] # ifconfig eno33554960 -promisc //关闭混杂模式 eno33554960: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500 |
混杂模式:指的是一台服务器能够接收到所有的数据流,无论目标地址是否是它,默认情况下网卡只把发给本机的包(包括广播包)传送给上层程序。一般是网络管理员诊断网络问题时开启。
route:路由查看及管理
路由条目类型:
主机路由:目标地址为单个IP (host )
网络路由:目标地址为IP网络 ( net )
默认路由:目标为任意主机,0.0.0.0/0.0.0.0
1
2
3
4
5
6
|
[root@magedu ~] # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.18.0.1 0.0.0.0 UG 100 0 0 eno16777728 172.18.0.0 0.0.0.0 255.255.0.0 U 100 0 0 eno16777728 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eno33554960 |
直接route的话会把ip地址反解成主机名,如果路由中有大量的单机地址,会导致route显示非常的慢,而且效率非常低。
-n:以数字形式显示路由信息.
添加路由条目: [子网掩码] [下一跳]
route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
1
2
3
4
5
|
[root@magedu ~] # route add -net 10.0.0.0/8 gw 172.18.0.1 //网卡可以省略 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.18.0.1 0.0.0.0 UG 100 0 0 eno16777728 10.0.0.0 172.18.0.1 255.0.0.0 UG 0 0 0 eno16777728 |
注意,下一跳的地址必须跟网卡的IP在同一网段上。
删除路由条目:
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]
[root@magedu ~]# route del -net 10.0.0.0/8
[root@magedu ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.18.0.1 0.0.0.0 UG 100 0 0 eno16777728
default:默认路由,相当于0.0.0.0
netstat命令:状态及统计数据查看
-rn:以数字形式显示内核路由表 相当于route -n
显示网络连接状态:
-t:显示tcp协议的相关的连接 tcp:面向连接的协议;通信开始之前,要建立一个虚链路;通信完成后还要拆除连接
-u:显示udp协议的相关连接 udp:无连接协议,直接发送数据报文
-w:显示raw socket(套接字)的相关连接
-l:显示正在监听的相关连接
-a:显示所有连接
-n:以数字形式显示IP和端口
-p: 显示相关的进程和PID
常见的组合: -ntlp /-utlp
1
2
3
4
5
6
7
|
[root@magedu ~] # netstat -ntlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID /Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1373 /sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2010 /master tcp6 0 0 :::22 :::* LISTEN 1373 /sshd tcp6 0 0 ::1:25 :::* LISTEN 2010 /master |
显示接口的统计数据:
netstat -I //显示所有接口
netstat -Idev //显示单个网卡接口
1
2
3
4
5
6
|
[root@magedu ~] # netstat -I Kernel Interface table Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eno16777 1500 31798 0 124 0 1907 0 0 0 BMRU eno33554 1500 130267 0 0 0 141 0 0 0 BMPRU lo 65536 0 0 0 0 0 0 0 0 LRU |
ip命令:
ip link:网络设备配置
ip link show:显示网络设备信息
ip link set :修改网络设备信息
1
2
3
4
5
6
7
|
[root@magedu ~] # ip link show //显示二层网络信息 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT link /loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:0b brd ff:ff:ff:ff:ff:ff 3: eno33554960: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:15 brd ff:ff:ff:ff:ff:ff |
修改eno33554960的名称: 修改前得把网卡down掉。
用法:ip link set name ethX Name ethX
1
2
3
4
5
|
[root@magedu ~] # ip link set eno33554960 down [root@magedu ~] # ip link set eno33554960 name eth0 [root@magedu ~] # ip link show 3: eth0: <BROADCAST,MULTICAST,PROMISC> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:15 brd ff:ff:ff:ff:ff:ff |
把eth0的混杂模式去掉:
用法:ip link set FUNCTION on/off ethX
1
2
3
4
|
[root@magedu ~] # ip link set promisc off eth0 [root@magedu ~] # ip link 3: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:15 brd ff:ff:ff:ff:ff:ff |
netns PID : 虚拟化,用于将接口移动到指定的网络名称空间 //centos7以下不支持
1
2
3
4
5
6
7
8
|
[root@magedu ~] # ip netns help Usage: ip netns list // 列出netns ip netns add NAME // 添加netns ip netns delete NAME // 删除netns ip netns identify PID ip netns pids NAME ip netns exec NAME cmd ... // 在指定的netns中运行命令 ip netns monitor |
添加一个叫firstnet的虚拟化网络,并把eth0移动到此网络中,查看虚拟化网络信息
1
2
3
4
5
6
7
8
9
|
[root@magedu ~] # ip netns add firstnet [root@magedu ~] # ip netns firstnet [root@magedu ~] # ip link set eth0 netns firstnet [root@magedu ~] # ip link show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT link /loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:0b brd ff:ff:ff:ff:ff:ff |
查看虚拟化网络信息:
1
2
3
4
5
|
[root@magedu ~] # ip netns exec firstnet ip link show 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT link /loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 3: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000 link /ether 00:0c:29:7c:7e:15 brd ff:ff:ff:ff:ff:ff |
删除虚拟化网络: //删除后eth0可以再物理地址查到
1
|
[root@magedu ~] # ip netns add firstnet |
ip addr:显示网卡信息(包括IP)
ip addr show:显示网卡信息
ip addr add IPADDR dev ethX :添加IP
ip addr del IPADDR dev ethX:删除IP
1
2
3
4
5
6
7
|
[root@magedu ~] # ip addr show 2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link /ether 00:0c:29:7c:7e:0b brd ff:ff:ff:ff:ff:ff inet 172.18.254.97 /16 brd 172.18.255.255 scope global eno16777728 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe7c:7e0b /64 scope link valid_lft forever preferred_lft forever |
添加一个IP:
1
2
3
4
5
6
7
8
9
10
|
[root@magedu ~] # ip addr add 192.168.1.100/24 dev eno33554960 [root@magedu ~] # ip addr 3: eno33554960: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link /ether 00:0c:29:7c:7e:15 brd ff:ff:ff:ff:ff:ff inet 172.18.252.96 /16 brd 172.18.255.255 scope global dynamic eno33554960 valid_lft 83229sec preferred_lft 83229sec inet 192.168.1.100 /24 scope global eno33554960 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe7c:7e15 /64 scope link valid_lft forever preferred_lft forever |
删除一个IP:
1
|
[root@magedu ~] # ip addr del 192.168.1.100/24 dev eno33554960 |
或者可以清空一个网卡的ip:
ip addr flush dev ethX
ip route: 实现路由表管理
ip route add:添加路由
ip route del:删除路由
ip route show:显示路由
ip route flush :清空路由
用法: ip route add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]
[ 目标地址 ] [下一跳] [指定源地址]
1
2
3
|
[root@magedu ~] # ip route add 192.168.1.0/24 via 172.18.0.1 dev eno33554960 [root@magedu ~] # ip route list 192.168.1.0 /24 via 172.18.0.1 dev eno33554960 |
指定网卡上的哪个ip:
1
2
3
4
5
|
[root@magedu ~] # ip addr add 172.18.254.100/16 dev eno33554960 [root@magedu ~] # ip addr show inet 172.18.252.96 /16 brd 172.18.255.255 scope global dynamic eno33554960 valid_lft 81531sec preferred_lft 81531sec inet 172.18.254.100 /16 scope global secondary eno33554960 |
1
2
3
|
[root@magedu ~] # ip route add 10.0.0.0/8 via 172.18.0.1 dev eno33554960 src 172.18.254.100 [root@magedu ~] # ip route show 10.0.0.0 /24 via 172.18.0.1 dev eno33554960 src 172.18.254.100 |
删除路由:
1
|
[root@magedu ~] # ip route del 10.0.0.0/24 |
清空路由表: 需指明具体范围
1
|
[root@magedu ~] # ip route flush 172.18/16 |
ss命令: 取代netstat命令
ss [option] [FILTER]
选项:
-t:显示tcp协议的相关的连接
-u:显示udp协议的相关连接
-w:显示raw socket(套接字)的相关连接
-l:显示正在监听的相关连接
-a:显示所有连接
-n:以数字形式显示IP和端口
-p: 显示相关的进程和PID
-m:内存用量
-o:计时器信息
ss还有过滤的功能:
1
2
3
|
[root@magedu ~] # ss -tan state established //指明已建立连接的 Recv-Q Send-Q Local Address:Port Peer Address:Port 0 52 172.18.254.97:22 172.18.252.65:50817 |
2、文件配置
通过修改配置文件来配置IP:
第一种方法:
centos6可以在命令行输入setup或者system-config-network,通过图形界面来配置IP。
centos7可以在命令行输入nmtui,通过图形界面来配置IP。
第二种方法:
修改/etc/sysconfig/network-scripts/ifcfg-ethX文件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
[root@magedu network-scripts] # cat ifcfg-eno16777728 TYPE=Ethernet // 设备类型 BOOTPROTO=static // 激活此设备时用什么协议来配置接口属性,有DHCP.BOOTP.Static.non DEFROUTE= yes // 默认路由 PEERDNS= yes // 如果用DHCP协议,是否允许DHCP Server分配的dns来覆盖本地手动指定的DN IPV6INIT= yes // 是否初始化ipv6 NAME=eno16777728 // 设备别名 UUID=7d317209-c3a3-40c6-948c-08e9ecfbd5cb // 设备的唯一标识 DEVICE=eno16777728 // 设备名称 ONBOOT= yes // 是否开机启动 IPADDR= //IP 地址 NETMASK= // 子网掩码 GATEWAY= // 网关 DNS1= // 定义DNS DOMAIN= // 定义DNS域 USERCTL=no // 是否允许普通用户控制此设备 NM_CONTROLLED=no // 是否使用NetworkManager服务来控制接口 /不建议开启 |
修改完后重启network服务: 此方式配置的IP地址永久有效
centos6:service network restart
centos7:systemctl restart network.service
路由配置文件:
在/etc/sysconfig/network-scripts/route-ethX
支持两种配置方式,但不可混用
1、每行一个路由条目
target via gw
1
2
3
4
5
|
[root@magedu network-scripts] # vim ifcfg-eno33554960 [root@magedu network-scripts] # cat route-eno33554960 192.168.0.0 /24 via 172.18.0.1 [root@magedu network-scripts] # ip route show 192.168.0.0 /24 via 172.18.0.1 dev eno33554960 proto static metric 100 |
2、每三行一个路由条目:#表示数字,可以写多组路由条目
ADDRESS#=target
NETMASK#=mask
GATEWAY#=nexthop
1
2
3
4
5
6
|
[root@magedu network-scripts] # cat route-eno33554960 ADDRESS0=10.0.0.0 NETMASK0=255.0.0.0 GATEWAY0=172.18.0.1 [root@magedu network-scripts] # ip route show 10.0.0.0 /8 via 172.18.0.1 dev eno33554960 proto static metric 100 |
(转)linux配置网卡的命令的更多相关文章
- linux配置网卡IP地址命令详细介绍及一些常用网络配置命令
linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...
- Linux中网卡相关命令以及SSH连接远程主机
ifconfig 命令 查看与配置网络状态命令 关闭与启动网卡 ifdown 网卡设备名 禁用该网卡设备 ifup 网卡设备名 启用该网卡设备 查询网络状态 netstat 选项 -t 列出TCP协议 ...
- linux 配置网卡、远程拷贝文件、建立软硬链接、打包/解包、压缩/解压缩、包操作、yum配置使用、root密码忘记
目录 一.配置网卡 二.xshell连接 三.远程拷贝文件 四.建立软硬连接 五.打包/解包和压缩/解压缩 六.包操作 七.配置yum源 配置yum源 配置阿里云源 常用命令 yum其他命令 八.重置 ...
- linux配置网卡
我爱折腾.在本地虚拟机里装了linux的环境.要配置linux的网卡文件. 如下: vi /etc/sysconfig/network-script/ifcfg-eth0; 刚装完系统,没有vim , ...
- Linux配置网卡、网卡会话、网卡bonding
配置网卡 1.路径: /etc/sysconfig/network-scripts/ifcfg-eno16777728 2.含义:HWADDR=00:0C:29:9C:D6:4D Mac地址 ...
- linux物理网卡检测命令mii-tool
mii-tool #是用于查看.管理物理的网络接口的状态,还可以配置网卡需要的协商方式. 一 ,查看网卡工作状态 mill-tool [网卡名] #查看物理网卡连接状态 -V 显示版本信息 ...
- linux学习(二)linux配置网卡以及常见网络问题排查
实验环境环境:mac,vmware fusion 一.常用的虚拟机网络连接模式. NAT:推荐方式.它可以使你在切换网络环境(比如在工作中和家里)时,不需要修改虚拟主机的配置,而维持正常的上网功能. ...
- linux配置网卡绑定
1.确定好要绑定的那两个网口 我这边要绑定的是两个业务口 em2.em3 2.配置ifcfg-bond0.em2.em3 3.修改配置文件/etc/modprcode.d/disk.conf 底部添 ...
- linux配置mysql,tomcat命令vi
[root@yangchehome bin]# ./mysqld_safe -user=mysql & [1] 17135 [root@yangchehome bin]# 140316 16: ...
随机推荐
- 一 vue开发环境搭建
2016年,Vue同Angular.React形成三足鼎立的局面,让前端的开发者顾不暇接,今天我们就来了解一下Vue的环境搭建. 一.node.js安装: node.js:一种javascript的运 ...
- uboot启动参数设置分类及方法
一.nfs启动内核与根文件系统,内核与根文件系统都在nfs上 bootargs=noinitrd root=/dev/nfs rw nfsroot=192.168.0.1:/home/tekkaman ...
- UML核心元素--分析类
分析类共有三个:边界类(boundary).控制类(control)和实体类(entity),这些分析类都是类的版型.分析类是跨越需求到设计实现的桥梁. 边界类:从需求向现实的转换过程中,任何两个有交 ...
- js---倒计时的自动跳转.html
============================================================================== 倒计时的自动跳转.html <!DO ...
- C++模板特化编程
在C++中,模板特化是除了类之外的一种封装变化的方法.模板特化可以通过编译器来对不同的模板参数生成不同的代码. 模板特化通常以模板结构体作为载体.常用技法包括:类型定义.静态成员常量定义和静态成员函数 ...
- C++中对象的常引用
直接传递对象名 用对象名做函数参数时,在函数调用时将建立一个新的对象,它是形参对象的拷贝. ================下面给出一个直接传递对象名的例子程序1.1================= ...
- 面试题: mysql 数据库去重 已看1 不好使
mysql去重面试总结 前言:题目大概是这样的. 建表: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CREATE TABLE `test2` ( `id` ...
- ubuntu 13.04 安装 JDK
ubuntu 13.04 安装 JDK 具体步骤参详了如下链接: http://blog.csdn.net/yang_hui1986527/article/details/6677450 1.到 Su ...
- hdu 5147 Sequence II (树状数组 求逆序数)
题目链接 Sequence II Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- python写入文件编码报错
decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码. encode的作用是将u ...