ifconfig、route、ip route、ip addr、 ip link 用法

网络管理是一个复杂而庞大的体系,博主最近刚好学了一点关于网络的知识,就跟大家分享一下,如何管理网卡、配置及查看ip地址和路由表。主要通过以下几个命令来演示一下。

一、ifconfig

1)配置地址:

比如修改eth0网卡的ip为192.168.174.100,子网掩码为255.255.255.0

ifconfig eth0 192.168.174.100/24

使用ifconfig修改ip会直接在内存中生效,重启系统或者重启network服务就丢失。

重启服务:Centos6:service network restart

Centos7:systemctl restart network

2)具有查看功能:

ifconfig   显示网卡信息,被禁用的网卡看不到,拔了网线断连接不算禁用,仍然能看到该网卡

ifconfig -a   不管启用的网卡还是禁用的都能显示出来,但是看不到禁用网卡的ip

   ip a也可以查看网卡,但是如果网卡被down,ifconfig -a不显示该ip,也不显示网卡状态,但是ip a可以显示网卡处于down状态

3)启用、禁用网卡

ifconfig eth1 up    启用eth1网卡

ifconfig eth1 down  禁用eth1网卡,这种禁用是从数据链路层断掉,但是网络层ip还在,也就是仍然能ping通

ifdown  eth0   禁用网卡,删除了网络层ip

4)ifconfig -s eth0    扫描eth0接口的数据

5)网卡别名

ifconfig eth1:1 192.168.174.100/24   起网卡别名

ifconfig eth1:1 192.168.174.100/24   删除别名

二、route

1、 查看路由表: route -n

2、添加路由记录:是临时添加的记录,重启network服务就失效

1)添加到达目标主机的路由

route add -host 目标主机 gw 网关 dev 接口

比如 给eth0网卡添加一条到达10.1.111.111的路由记录,网关是10.2.111.111

route add -host 10.1.111.111 gw 10.2.111.111 dev eth0

2)添加到达目标网络的路由

route add -net 目标网络 netmask 子网掩码 gw 网关 dev 接口

或者route add -net 目标网络/子网掩码 gw 网关 dev 接口

比如 给eth0网卡添加一条到达网络10.1.0.0/16的路由,网关是10.2.111.111

route add -net 10.1.0.0 netmask 255.255.0.0 gw 10.2.111.111 dev eth0  或者

route add -net 10.1.0.0/16 gw 10.2.111.111 dev eth0

3)添加默认路由

route add default gw 网关

比如给eth0添加一条默认路由,网关是10.2.111.111

route add default gw 10.2.111.111

3、 删除路由记录:

删除路由记录只需要把添加路由记录命令中的add改成del就可以了,不过删除路由记录可以省略接口

1)删除到达目标主机的路由记录

route del -host 主机名

2)删除到达目标网络的路由记录

route del -net 目标网络/子网掩码

3)删除默认路由

route del default

三、ip route

ip route 的用法与route大同小异

1、显示路由:

ip route [show | list]

ip route显示的路由记录与route显示的格式不一样

2、添加路由

1)添加到达目标主机的路由记录

ip route add 目标主机 via 网关

2)添加到达网络的路由记录

ip route add 目标网络/掩码 via 网关

3)添加默认路由

ip route add default via 网关

下面只举一个例子说明一下。

比如增加一条到达主机10.2.111.112的路由,网关是10.1.111.112

ip route add 10.2.111.112 via 10.1.111.112

3、删除路由

ip route del 目标网络/掩码

ip route del default [via 网关]

4、清空路由表:

ip route flush

四、ip link

1)查看

Ip link只能看链路层的状态,看不到ip地址

2)启用、禁用接口

ip link set device down   禁用指定接口

ip link set device up     启用指定接口

比如禁用eth0就是ip link set eth0 down

说明:

ip link不支持tab键补齐

在centos6中有的命令不支持tab键补齐,那么使用需要安装bash-completion包,安装完之后,可以查看包里都支持哪些命令补齐,但是发现ip link不包括在内。

五、ip addr

1)查看

ip addr 即ip a   可以查看网卡的ip、mac等,即使网卡处于down状态,也能显示出网卡状态,但是ifconfig查看就看不到。

ip addr show device  查看指定网卡的信息

比如查看eth的信息,就是ip addr show eth0

2)作用域

scope {global|link|host}]:指明作用域

global: 全局可用,即两个接口进来的数据我都可以响应。是默认状态。

link: 仅链接可用,进来的数据只有直接相连的那个接口能够响应

host: 本机可用,即只能自己访问

3)增加ip

ip addr add ip/netmask dev 接口

比如给eth0增加一个2.2.2.2/16 地址

ip addr add 2.2.2.2/16 dev eth0

4)删除ip

ip addr del ip/netmask dev 接口

5)清空指定网卡的所有ip

ip addr flush dev 接口

6)给网卡起别名,起别名相当于给网卡多绑定了一个ip

用法: 比如给网卡eth0增加别名

ip addr add 3.3.3.3/16 dev eth0 label eth0:1

       7)删除别名

ip addr del ip/netmask dev eth0 [label eth0:1]

说明一:

使用命令的方式设置别名,重启服务就没了,若要永久生效,需要写配置文件,步骤如下:

1、确保NetworkManager服务是停止的

Centos6: service NetworkManager status 查看服务状态

service NetworkManager stop 临时停止

chkconfig NetworkManager off  下次开机即停止服务

Centos7: systemctl status NetworkManager 查看服务状态

systemctl stop NetworkManager 临时停止

systemctl disable NetworkManager   下次开机即停止服务

2、 编辑配置文件

cd /etc/sysconfig/network-scripts/

vim ifcfg-eth1:1  至少写入以下内容

DEVICE=eth1:1

BOOTPROTO=static

IPADDR=           ==》ip地址

PREFIX=           ==》掩码

GATEWAY=         ==》网关

设置别名时必须是静态ip,不能是自动获取

3、 重启服务

Centos6:  service network restart

Centos7:  systemctl restart network

如果不想要这个别名了,直接删除该文件,然后重启服务即可 。

说明二:

使用命令的方式增加或者删除ip,都是临时的,如果重启network服务,那么操作就失效了。想要永久生效可以修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth*,这个文件是用来设置网卡参数,这个文件内的所有设置,基本上就是bash的变量设置规则(都应该要大写),否则我们的scropt会误判。

步骤如下:

1) 编辑文件

vim /etc/sysconfig/network-scripts/ifcfg-eth0  至少要有如下几项:

DEVICE=eth0

BOOTPROTO=static

IPADDR=           ==》ip地址

PREFIX=           ==》掩码

GATEWAY=         ==》网关

2)生效:重启服务

Centos6:  service network restart

Centos7:  systemctl restart network

说明三: 使用命令的方式增加或者删除路由记录,都是临时的,如果重启network服务,那么操作就失效了。想要永久生效可以编辑配置文件/etc/sysconfig/network-scripts/route-eth*,步骤如下:

1、 vim etc/sysconfig/network-scripts/route-eth0

文件内容有两种写法:

1)netid/mask via gw  比如2.2.2.2/16 via 10.0.0.0

2)ADDRESS#=目标网络

NETMASK#=子网掩码

GATEWAY#=网关

2、重启服务

Centos6:  service network restart

Centos7:  systemctl restart network

同一路由记录的#数字必须一样,因为可能会添加多条路由,数字一样的为同一组。

同一个文件里,两种格式不能混合着写。

时间: 2024-10-27 04:53:57

ifconfig、route、ip route、ip addr、 ip link 用法的相关文章

linux网络配置命令 ifconfig 、route 、ip 、ip route

ifconfig route ip ip route 一.ifconfig 命令(查看或配置Ip) 1.查看网络连接 # ifconfig  \\ 显示所有活动连接,不包令禁用的设备 或  # ifconfig -a  \\ 显示所有活动及非活动的连接 显示指定接口的连接 # ifconfig eth1 2.配置ip地址 # ifconfig eth1 192.168.0.1 netmask 255.255.255. 或 # ifconfig eth1 192.168.0.1/24 3.启用或禁

从ip addr add和ifconfig的区别看linux网卡ip地址的结构

今天一个老外在邮件列表上问了一个问题,就是ip addr add和ifconfig的区别,我给他进行了解答,可能因为英语不好吧,解答的很简单,因此我还是要在这里详细说明一下.其实它们之间没有什么区别,只 是表述方式不同罢了.如果你非常理解网络协议的原理以及网络的分层架构那么我想你就不会有这个问题,实际上,每一个网卡设备都有一个mac地址,但是却可 以有多个网络层地址,比如IP地址,然而这个事实无法很好地像用户提供操作接口,所以就引出了ip别名(IP aliases)和辅助ip(secondary

VMware 虚拟机 Ubuntu 系统执行 ifconfig 命令 eth0没有IP地址(intet addr、Bcast、Mask) 解决:UP BROADCAST MULTICAST 问题

VMware 虚拟机 ifconfig没有net_addr地址.Bcast.Mask的解决方法 使用时间长的虚拟机,会莫名其妙的连接不上网 在终端中,使用ifconfig命令查看Ubuntu系统的IP地址,发现没有分配IP地址. eth0:网络接口 link encap : 网络类型 HWaddr : 网卡物理地址 Inet addr :(internet address) IP地址 Bcast:广播地址 Mask:子网掩码 UP:正在使用的网络接口 RX packets,TX packets 

Route all trafic for specific ip over specific network interface

15 I have a linux server that needs to get some routing. I'm fairly new at this and i don't find any clear source on google. The setup should be simple: All traffic to a server on ip 192.168.72.20 should be sent over interface 3. All other interfaces

路由知识之ip route 命令中的疑惑

1.基础知识 1.1 路由 (Routing) 1.1.1 路由策略 (使用 ip rule 命令操作路由策略数据库) 基于策略的路由比传统路由在功能上更强大,使用更灵活,它使网络管理员不仅能够根据目的地址而且能够根据报文大小.应用或IP源地址等属性来选择转发路径. ip rule 命令: Usage: ip rule [ list | add | del ] SELECTOR ACTION (add 添加:del 删除: llist 列表) SELECTOR := [ from PREFIX

1.网络工具:ifconfig,ping,netstate,Redhat命令设置ip,finger,nslookup

 1 ip ad 查看网卡编号 2.ifconfig查看网卡信息 3.关闭网卡 4.启动网卡 5.给etho配置临时ip sudo ifconfig ethoIP地址 6.ping命令 ping [选项] 主机名/IP地址 查看网络上的主机是否在工作.它向该主机发送ICMP ECHO_REQUEST包.有时我们想从网络上的某台主机上下载文件,可以是又不知道那台主机是否开着,就需要使用ping命令查看. 命令中各选择项的含义如下: -c 数目在发送指定数目的包后停止. -d 设定SO_DEBU

虚拟机Centos开机以后,有eth0网卡,但是没有IP,Determine IP information for eth0.. no link present check cable

Determine IP information for eth0.. no link present check cable 如果你的VMware虚拟机centos6.5使用NAT模式,开机以后,使用ifconfig命令后无法获取到IP 然后你关闭VMware,然后重新打开,开启centos,就会发现可以获取IP了.好奇怪的现象! 原因分析:其实我也出现了这样的情况,然后上网百度了很久,才发现这个原因. 那你的电脑应该是杀毒软件(360,金山毒霸)这样的软件让VMware的一些服务在开机是无法

在android程序中怎么执行ifconfig命令来修改android 的ip地址,

1.引入: import android.provider.Settings; import android.content.ContentResolver; ps:在Setting.System中有以下标志 WIFI_USE_STATIC_IP WIFI_STATIC_IP WIFI_STATIC_NETMASK WIFI_STATIC_GATEWAY WIFI_STATIC_DNS1 and WIFI_STATIC_DNS2 2.在AndroidManifest中加入<uses-permis

如何判断自己IP是内网IP还是外网IP

tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255  172.16.0.0/12:172.16.0.0-172.31.255.255  192.168.0.0/16:192.168.0.0-192.168.255.255 使用保留地址的网络只能在内部进行通信,而不能与其他网络互连.如果要与外部通信,那么必须通过网关与外部通信,这里使用了NAT, NAPT技术就是用来保证通信的代理机制. 另外,一些宽带