linux ifconfig route ip lo 网卡参数永久配置方法

标签:
健康 |
ifconfig 用来配置一张网卡的参数 lo
网卡参数永久配置方法 命令帮助规则
ifconfig -a 列出所有的网络适配器的信息
ifconfig eth0 up / down 重启与关闭单张网卡
sudo ifconfig eth0 down (停用网卡)
sudo ifconfig eth0 hw ether XX:XX:XX:XX:XX:XX(需要更改的MAC地址)
sudo ifconfig eth0 up (启用网卡)
sudo ifconfig eth0 192.168.0.100 netmask 255.255.255.0
//配置eht0卡的ip地址与ip掩码, 经过这个配置后,会自动在main(254)路由表中 添加对应的路由信息 如下(route
-n)
====================================================================
配置网关 通过route
sudo route add -net 192.168.0.0 netmask
192.168.0.0 gw 192.168.0.1 dev eth0
====================================================================
route route -n :打印出网关的ip
root@ubuntu:~# route
Kernel IP routing table
Destination
Gateway
Genmask
Flags Metric
Ref Use
Iface
10.147.9.0
*
255.255.255.0
U
1
0
0 eth0
192.168.1.0
*
255.255.255.0
U
2
0
0 wlan0
192.168.122.0
*
255.255.255.0
U
0
0
0 virbr0
link-local
*
255.255.0.0
U
1000
0
0 eth0
192.168.0.0
192.168.1.1
255.255.0.0
UG
0
0
0 wlan0
default
10.147.9.1
0.0.0.0
UG
0
0
0 eth0
Kernel IP routing table
Destination
10.147.9.0
192.168.1.0
192.168.122.0
link-local
192.168.0.0
default
结果是自上而下, 就是说, 哪条在前面, 哪条就有优先, 前面都没有, 就用最后一条default
举例, 添加一条路由(发往192.168.62这个网段的全部要经过网关192.168.1.1)
route add -net 192.168.62.0 netmask 255.255.255.0 gw 192.168.1.1
route add -net 192.168.62.0 netmask 255.255.255.0 gw 192.168.1.1
================================================
ubuntu 13.10
man route
route add [-net | -host] target [netmask Nm] [gw Gw] [metric
N] [mss M] [window W] ...
targer:the destination network or host . you can provide IP
addresses in dotted decimal or host/network
names
route add -net 192.56.76.0 netmask 255.255.255.0 dev
eth0
route del default
route -n
kernel IP routing table
Destination
Gateway
Genmask
Flags Metric
Ref Use
Iface
0.0.0.0
192.168.0.1
0.0.0.0
UG
0
0
O
eth0
192.168.0.0
0.0.0.0
255.255.255.0 U
1
0
O
eth0
192.168.1.0
0.0.0.0
255.255.255.0
U
9
0
O
wlan0
执行 route del default
route -n
kernel IP routing
table
Destination
Gateway
Genmask
Flags
Metric Ref
Use
Iface
192.168.0.0
0.0.0.0
255.255.255.0 U
1
0
O
eth0
192.168.1.0
0.0.0.0
255.255.255.0 U
9
0
O
wlan0
Destination:the destination
network or destination host
Gateway: the gateway address
or "*"if none set
Genmask:the network for the
destination net; 其中255.255.255.255是host
destination; 0.0.0.0 为default route
解读:
参考 route add -net 192.56.76.0
netmask 255.255.255.0 dev eth0
那么上面的route表就为,
Destination 192.168.0.0 (即192.168.0.x
& 255.255.255.0), 即192.168.0.x数据包
通过eth0来路由;
Destination 192.168.1.0 (即192.168.1.x
& 255.255.255.0), 即192.168.1.x数据包
通过wlan0来路由;
这样就不冲突,可以正常上网,两个网卡正常在各自的网络工作了。
删除一条路由表
sudo route del default
sudo route del -net 192.168.0.0 netmask 255.255.255.0
有时候删除时会提示错误,补充点详细信息即可
仅通过
man route 的帮助信息中
比如
route [-V] [-A family] del [-net |
-host] target [gw Gw] [network Nm] [metric
N] [[dev] If]
linux终端上面显示的帮助信息如上,有加粗的部分,有没有加粗的部分,有[]部分,也有没有[]的部分
加粗部分:表示是该命令的固有选项
没有加粗的部分:使用该命令的用户输入的参数
有[]的部分:表示使用该命令时该部分可以被省略
没有[]的部分:表示使用该命令时该部分不能省略
=================================================================================
cat /etc/iproute2/rt_tables 查看所有路由表的别名
ip route list|show table 254
来查看main路由表中的具体路由项
ip rule list 查看路由规则
ip命令为iproute2包的一个工具,用来定义ip包的一些规则,ip功能强大,包含了ifconfig route
等命令的功能
一、原理说明
1、路由表(table)从0到255进行编号,每个编号可以对应一个别名,编号和别名的对应关系在linux下放在/etc/iproute2/rt_tables这个文件里,一般0编号的table对应的别名为upspec,255编号对应的别名为local,254和253对应的别名分别为main和default,我们通常用route命令配置和查看的路由表信息为别名为main的路由表信息。
ip route list table 254 来查看main
路由表中的具体路由
2、路由规则负责定义路由策略,它定义来源哪里的IP需要查询哪个路由表(使用别名)。路由规则的查看使用ip rule
sh路由规则也从0开始编号,可以自由添加,来源相同IP的路由规则选择根据规则编号的大小确定优先级,编号越小优先级越高。例如如下路由规则:
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
优先级最高的规则是0,要查询的路由表名称是local,其次是32766,要查询的路由表名称是main,后面依此类推。
3、操作系统在选路时首先根据路由规则选取table,然后再从table里选取相应路由,如果同一table里不同接口使用相同的网关,选路时会默认选择第一条路由,所以当有两个网络接口卡时,如果目标网络在同一网段,那么由于选路时按第一条路由出口出去,所以会导致所有的流量都会从第一个网卡上出去。
http://s16/bmiddle/001Y9f7yty6HThLON8b3f&690ifconfig route ip lo 网卡参数永久配置方法" TITLE="linux ifconfig route ip lo 网卡参数永久配置方法" />
eth0:
ethernet的简写,一般用于以太网接口。
LINUX中的lo(回环接口)
在LINUX系统中,除了网络接口eth0,还可以有别的接口,比如lo(本地环路接口)。
假如包是由一个本地进程为另一个本地进程产生的,
它们将通过外出链的’lo’接口,然后返回进入链的’lo’接口.具体参考包过滤器的相关内容。
由图中所示,系统默认已经实现了三个策略(本地策略、主策略和默认策略),与之对应的是三张默认路由表(本地路由表、主路由表和默认路由表)
Linux最多可以支持255张路由表,其中有3张表是内置的:
表255
本地路由表(Local
table)本地接口地址,广播地址,已及NAT地址都放在这个表。该路由表由系统自动维护,管理员不能直接修改。
表254
主路由表(Main
table)如果没有指明路由所属的表,所有的路由都默认都放在这个表里,一般来说,旧的路由工具(如route)所添加的路由都会加到这个表。一般是普通的路由。
表253
默认路由表(Default
table)一般来说默认的路由都放在这张表,但是如果特别指明放的也可以是所有的网关路由。
表 0
保留
root@netmonster# ip rule list
0: from
all lookup local
32766:
from all lookup main
32767:
from all lookup default
规则0,它是优先级别最高的规则,规则规定,所有的包,都必须首先使用local表进行路由。本规则不能被更改和删除。
规则32766,规定所有的包,使用表main进行路由。本规则可以被更改和删除。
规则32767,规定所有的包,使用表default进行路由。本规则可以被更改和删除。
在默认情况下进行路由时,首先会根据规则0在本地路由表里寻找路由,如果目的地址是本网络,或是广播地址的话,在这里就可以找到合适的路由;
如果路由失败,就会匹配下一个不空的规则,在这里只有32766规则,在这里将会在主路由表里寻找路由;
如果失败,就会匹配32767规则,即寻找默认路由表。如果失败,路由将失败。重这里可以看出,策略性路由是往前兼容的
======================================
以上的配置,都是对本次有效,重启后就又要重新配置,很麻烦......
vim
/etc/network/interfaces
修改如下:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
路由表会自动添加
======================================
wifi0:wifi是无线局域网,因此wifi0一般指无线网络接口。
ath0: Atheros的简写,一般指Atheros芯片所包含的无线网络接口。
lo: local的简写,一般指本地环回接口。
1) 什么是LO接口?
2) LO接口的作用是什么?
PART2 实验:
本地一个进程发起连接,到一个本地的daemon监听的内网IP地址(eth1:
10.1.1.1)的端口(8085),此时在eth1上是抓不到包的,在 lo
上抓到,说明使用的是本地回环接口lo,而网络层的IP地址则是内网IP地址.