欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

马哥 11_04 _Linux网络配置之四 ifconfig及ip命令详解 有大用

[root@localhost network-scripts]# setup   (打开配置 如系统配置,网络配置,防火墙工具,验证配置等)

image.png



DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

主机接入网络:

IP:

NETMASK子网掩码

GATEWAY

HOSTNAME

DNS   (DNS服务器能够帮我们解析其它主机的主机名) (需要2个,备用的1个,事实上可以配置3个)


DNS1

DNS2

DNS3

全球的DNS连在一起的,(DNS1查不到(解析不到),DNS2一定也查不到(解析不到))

(DNS1联系不上了不能解析了,才使用 DNS2)

应该把 响应快的作为DNS1


        手动指定

        DHCP: Dynamic Host Configuration Protocol  动态主机配置协议  DHCP(路ip地址相关)

               让一台DHCP服务器为其它主机提供地址或其它网络配置信息的一种服务,叫DHCP服务器(DHCP Server)

        169.254. 开头的 (当DHCP服务器关闭的时候)SAAN会提供自动地址,随机生成的,只能用于本地通信,没有网关

        (主机进入网络的,跟 linux 配置没有关系的)



路由


linux: 网络属于内核的功能

image.png

(地址属于内核的,通过 192.168.这个网卡进来,ping 172.10 主机仍然会响应,

因为地址属于内核,不属于网卡,只要本地有这个这址(172.10),无论通过哪个网卡(192.168)

进行ping,主机都会响应的) 


image.png

lo接口: (local back)本地回环,本地既做服务端 又做客户端的时候 自己跟自己联系,用到的

在自己的内存内部实现从客户端从服务端

以太网网卡接口(ethernet): ethX eth[0-9] 其实不止0-9,可能有两位的 eth11,eth12,eth13等

点对点连接 pppX : ppp0 ppp1 ppp2 等等 


系统识别的硬件 靠的是硬件设备的驱动程序

主设备号 次设备号 及关联的驱动程序来实现的

访问设备的时候 通过设备文件来访问

引用网卡的时候, 通过设备文件来访问太麻烦

这些网卡设备 都有名称的机制,直接使用名称 例如 ethX  eth0 eth1


早期在红帽5上 RHEL5,是基于别名来定义的 alias                /etc/modprobe.conf 

红帽6上 RHEL6,是通过udev来定义的  /etc/udev/rules.d/70-persistent-net.rules 


ifconfig [ethX] 可以直接显示当前linux主机上处于活动网卡的信息

    -a: 显示所有接口的配置信息



ifconfig ethX IP/MASK  [up|down]配置ifconfig     (MASK两种风格,一种是255.的格式 另一种是长度的 /24位1 16位1等 ) (MASK必须要指定的) up表示启动, down 表示禁用 (up|down没必要有IP/MASK)      配置是立即生效的 但不会永久有效(重启网络服务或主机,都失效)

# service network restart   #重启网络

网络服务:

        对网络地址的管理可以通过内置的服务脚本来实现

        这是红帽5 RHEL5 提供的  /etc/init.d/network {start|stop|restart|status}  启用网络功能 ( 自动让内核在TCP/IP协议站读网卡的配置文件,并让配置文件中的地址生效的)

        红帽6 RHEL6 (也支持上面的脚本,但默认使用本脚本,但默认这个脚本功能不完善,尤其在集群中是无法让它来管理脚本的) (所以建议把这个默认脚本也禁用,还启用上面的脚本 /etc/init.d/network {start|stop|restart|status}   来进行管理)

/etc/init.d/NetworkManager {start|stop|restart|status}

(红帽6上禁用的话,把/etc/init.d/NetworkManager停掉,并且网卡不通过/etc/init.d/NetworkManager来管理就可以了

,当然需要改配置文件)


route

image.png

-A family 表示 地址分类 -A 4 表示ipv4的 当然可以不用指,因为默认就是ipv4的

image.png




网关:

route  (有许多子命令,来管理本地的路由信息)

    add:添加

            -host (主机路由)

             -net  (网络路由)  (默认是网络路由,默认是  0.0.0.0 )

                    -net 0.0.0.0 表示添加默认路由  表示任意主机,不是本地网络(用法是 route add default gw NEXTHOP )

route add -net|-host DEST gw NEXTHOP

route add default gw NEXTHOP  明确指定添加的是默认路由 (可以省掉 -net) (这里下一跳,应该指本网络的某个网关(这个网关也是本机指向的网关吗?))


    del:删除  (不需要指明 gw,也可以指定 gw NEXTHOP) (如果只有这一条 例如 10.0.0.0/8 ,不用指定后面的gw 也能删除,

一般情况下,指向某一个的host或net只有一条,所以 一般del时,不用指定del)

            -host (主机路由)

             -net  (网络路由) 

route del -net 10.0.0.0/8  [gw NEXTHOP]

route del -net 0.0.0.0  (删除默认路由)(没有掩码,不需要指掩码)

route del default (删除默认路由) (可以省掉 -net)



     查看:

rounte -n:  以数字方式 numerical 显示各主机或端口等相关信息 


所作出的改动 重启网络服务或主机后 route也会失效


网络配置文件:

/etc/sysconfig/network  网络服务总开关的位置,包括主机名的定义都在这儿


网络接口配置文件: ifcfg

/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME

下面的严格区分大小写

DEVICE=: 关联的设备名称 与  ifcfg-INTERFACE_NAME名称的文件名的后半部分 INTERFACE_NAME 一定要保持一致

BOOTPROTO={static|none|dhcp|bootp}: 

引导协议:要使用静态地址static或none,都可以

dhcp 表示使用 dhcp服务获得地址,使用dhcp 是动态获取的,此文件底下的什么配置都没有用了

bootp有点古老,是  dhcp的前身

IPADDR=: IP地址(静态地址必须)

NETMASK=: 子网掩码(静态地址必须)

GATEWAY=: 设定默认网关(静态地址不必须,但此时没有下一跳 不能上网而已,不能跟非本网络中的主机通信而已)没法设定路由,只能设定默认网关,即默认路由

ONBOOT=: 开机时是否自动激活此网络接口 {yes|no}   (切记 yes 或 no 是小写 )

HWADDR: 硬件地址,要与硬件中的地址保持一致,可省, 实在不知道可以不用写

USERCTL={yes|no}: ( user control )是否允许普通用户控制此接口的启用或禁用  (切记 yes 或 no 是小写 )

PEERDNS={yes|no}:在BOOTPROTO为dhcp时,是否接受由DHCP服务器指定的dns地址,(好像是默认是可以改的,默认是yes吧,   是可以修改/etc/resolv.conf 里的 DNS服务器,如果 不想让DHCP 改的话 就使用 PEERDNS=no) (切记 yes 或 no 是小写 )

DEFROUTE={yes|no}: 这个选项指示网络接口是否应该成为默认路由。"yes": 表示该接口将被用作默认的网关路由。当系统需要访问外部网络(如互联网)时,它会通过此接口发送数据包。

不会立即生效,但重启网络服务或主机都会生效


路由

/etc/sysconfig/network-scripts/route-ethX

添加格式一:   (格式要保持一致,不能与格式二混合使用)(永久生效)

DEST  via  NEXTHOP

(DEST   可能是主机,也可能是网络,是网络的话要加掩码 via(通过,经过,取道),NEXTHOP 下一跳)


添加格式二:    (格式要保持一致,不能与格式一混合使用)(永久生效)

ADDRESS0= 

NETMASK0=

GATEWAY0=


ADDRESS1=

NETMASK1=

GATEWAY1=



DNS服务器指定方法只有一种 (一般两个吧 第二个备用 最多三个)

/etc/resolv.conf

nameserver DNS_IP_1 

nameserver DNS_IP_2

nameserver DNS_IP_3  


在网卡处如果指定dhcp的话,dhcp服务器可以修改/etc/resolv.conf这个文件的 

/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME 中 PEERDNS=no就不会修改了



指定本地解析 不需要指定dns

/etc/hosts

目标主机IP     主机名                           主机别名(可以省略)

172.16.0.1      www.magedu.com       www 



DNS-->/etc/hosts-->DNS缓存->DNS服务器


配置主机名即时生效:

hostname HOSTNAME

立即生效 不会永久有效



配置主机名永久有效

/etc/sysconfig/network

HOSTNAME=

此时 永久有效(重启主机生效,而不是重启网络服务生效),不会立即生效  

image.png

[root@mail network-scripts]# vim  /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=yes

#HOSTNAME=localhost.localdomain

HOSTNAME=mail.magedu.com

GATEWAY=192.168.1.11




RHEL5:

     setup:  system-config-network-tui 文本图形界面   (修改配置文件  不会立即生效)

     system-config-network-gui 纯粹图形化界面  (图形化窗口下的环境下才能使用)



ifconfig,老旧的命令    (添加网卡可以通过编辑虚拟机配置,添加新的网卡进来)


ARP  (Address Resole protocal )地址解析协议

iproute2  这是一个强大的软件包

        ip:   既能配置ip地址,又能配置路由,还能实现路由表的各种管理,可以实现策略路由

           

           最重要提三个对像object link,addr,route


            link: 跟设置,网络接口相关的, 配置网络接口属性(网卡属性)  ,也可以查看这些属性 (link 是对像 show,set是子命令)

image.png

                    show

                            ip -s link show    (-s , -stats, -statistics 这个选项 显示额外的统计信息)

                    set

                            ip link set DEV {up|down}  

                                        设定网络接口的某些工作属性的,比如启用或禁用某一个网卡



            addr: 协议地址 ( ipv4地址 ipv6地址 ),(地址属于内核,跟网卡没关系,但是老关联到网卡上) (addr 是对象)

                    add    (添加) ( add 是子命令 )

                         ip addr add (可以简写为a)  ADDRESS dev DEV      (dev device 设备的意思)                   

                    del    (删除)

                         ip addr del ADDRESS dev DEV

                    show    (显示)

                         ip addr show dev(可省)  DEV to PREFIX  ( to PREFIX可省)                   

                    flush       (清空,与del不同,可以清空多个)     (使用格式与 show 一样)

                         ip addr flush  dev(可省) DEV   to PREFIX  ( to PREFIX可省)                 

            route: 路由,路由的相关信息  (这个比较麻烦,马哥只讲如何看路由)




linux一块网卡可以使用多个地址,windows一个网卡也可以有多个地址:

网络设备可以有别名,

eth0 

        ethoX:X ,eth0:0,eth0:1 ...            每一个别名可以取一个地址,这样一个网卡就可以有多个地址了


配置方法:

        ifconfig ethX:X  IP/NETMASK

/ect/sysconfig/network-scripts/ifcfg-ethX:X

DEVICE=ethX:X

其它的与ifcfg-ethX 没有什么变化


别名(非主要地址)不能使用DHCP协议动态获取,BOOTPROTO只能为static或者none,不能为 dhcp 








当使用dhcp为某个网卡指定地址的时候,dhcp协议是可以修改这个文件的




早期在红帽5上 RHEL5,是基于别名来定义的 alias

# cat /etc/modprobe.conf

image.png

pcnet32是同一个网卡的驱动程序 这里有两块网卡 eth0 eth1,同一种类型


32位的红帽5

[root@localhost ~]# cat /etc/modprobe.conf

alias eth0 pcnet32

alias scsi_hostadapter mptbase

alias scsi_hostadapter1 mptspi

alias scsi_hostadapter2 ata_piix

alias snd-card-0 snd-ens1371

options snd-card-0 index=0

options snd-ens1371 index=0

remove snd-ens1371 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-ens1371

[root@mylab ~]#


64位的红帽5

[root@mylab ~]# cat /etc/modprobe.conf

alias eth0 e1000

alias scsi_hostadapter mptbase

alias scsi_hostadapter1 mptspi

alias scsi_hostadapter2 ata_piix

alias snd-card-0 snd-ens1371

options snd-card-0 index=0

options snd-ens1371 index=0

remove snd-ens1371 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-ens1371

[root@mylab ~]#



红帽6上 RHEL6,是通过udev来定义的  /etc/udev/rules.d/70-persistent-net.rules 

[root@ebs-22618 ~]# cd /etc/udev/rules.d/

[root@ebs-22618 rules.d]# ls -la

总用量 28

drwxr-xr-x. 2 root root 4096 5月  15 2017 .

drwxr-xr-x. 4 root root 4096 5月  11 2017 ..

-rw-r--r--  1 root root  437 5月  15 2017 60-net.rules

-rw-r--r--. 1 root root  316 3月  22 2017 60-raw.rules

-rw-r--r--. 1 root root  536 5月  11 2017 70-persistent-cd.rules

-rw-r--r--  1 root root  437 5月  15 2017 70-persistent-net.rules

-rw-r--r--. 1 root root   54 5月  11 2016 99-fuse.rules

image.png

[root@ebs-22618 rules.d]# cat 70-persistent-net.rules

image.png


image.png


有两块网卡 如果只有一块的话 可以通过编辑虚拟机配置添加新的网卡进来

[root@ebs-22618 rules.d]# ifconfig

eth0      Link encap:Ethernet  HWaddr 52:54:00:EC:7E:45

          inet addr:211.149.175.98  Bcast:211.149.175.255  Mask:255.255.255.0

          inet6 addr: fe80::5054:ff:feec:7e45/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:9588827 errors:0 dropped:0 overruns:0 frame:0

          TX packets:4102850 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:928548341 (885.5 MiB)  TX bytes:5414879018 (5.0 GiB)


eth1      Link encap:Ethernet  HWaddr 52:54:00:BD:14:AA

          inet addr:192.168.175.98  Bcast:192.168.255.255  Mask:255.255.0.0

          inet6 addr: fe80::5054:ff:febd:14aa/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:5850 errors:0 dropped:0 overruns:0 frame:0

          TX packets:109 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:350928 (342.7 KiB)  TX bytes:4890 (4.7 KiB)


lo        Link encap:Local Loopback

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:65536  Metric:1

          RX packets:1756074 errors:0 dropped:0 overruns:0 frame:0

          TX packets:1756074 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:9510102224 (8.8 GiB)  TX bytes:9510102224 (8.8 GiB)



Link encap:Ethernet(是二层网络所使用的协议,以太网 )

HWaddr 52:54:00:EC:7E:45 (物理地址,五个冒号隔起来的六段)


[root@ebs-22618 rules.d]#        


Scope: Link 只在内部使用(局域网内使用?),Global 有全局使用(外网使用?)

image.png

collision:冲突的个数         txqueuelen:传输队列长度

image.png


[root@ebs-22618 rules.d]# ifconfig -a    显示所有连接 (IPV6-in-IPv4   ipv6到ipv4转换的连接 和 未启动非活动的也全部显示出来)


 image.png

IPV6-in-IPv4   ipv6到ipv4转换的连接




[root@ebs-22618 rules.d]# ifconfig eth0  只显示eth0的信息

eth0      Link encap:Ethernet  HWaddr 52:54:00:EC:7E:45

          inet addr:211.149.175.98  Bcast:211.149.175.255  Mask:255.255.255.0

          inet6 addr: fe80::5054:ff:feec:7e45/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:9595237 errors:0 dropped:0 overruns:0 frame:0

          TX packets:4106450 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:930027429 (886.9 MiB)  TX bytes:5420066703 (5.0 GiB)


[root@ebs-22618 rules.d]#



[root@ebs-22618 rules.d]# ifconfig eth1   只显示eth1的信息

eth1      Link encap:Ethernet  HWaddr 52:54:00:BD:14:AA

          inet addr:192.168.175.98  Bcast:192.168.255.255  Mask:255.255.0.0

          inet6 addr: fe80::5054:ff:febd:14aa/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:5854 errors:0 dropped:0 overruns:0 frame:0

          TX packets:109 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:351168 (342.9 KiB)  TX bytes:4890 (4.7 KiB)


[root@ebs-22618 rules.d]#


# ifconfig eth1 10.1.1.1/8     (子网掩码必须要指定的)

image.png

image.png


# ifconfig eth1 down  #(禁用eth1)    

# ifconfig 

image.png


# ifconfig -a

image.png


# ifconfig eth0 只显示某一块网卡的信息

image.png


# ifconfig eth1 up  (启用eth1吧)             ifconfig eth1 down(禁用eth1吧)    

            ifconfig eth1 IP/掩码 up  (可以指定ip地址 比如 ifconfig eth1 192.168.0.1/24 up  )   

            这种是立即生效的

# ifconfig 

image.png



# ifconfig eth1 192.168.10.123/24   (掩码默认是24位吧) (两种格式都可以 比如另一种  ifconfig eth1 192.168.10.123/255.255.255.0)

# ifconfig

image.png


# ping 192.168.10.123   ping 通,说明生效了  (探测内核中的 tcp/ip 协议站是不是工作正常了 )

image.png



[root@ebs-22618 rules.d]# man route

image.png



# ifconfig

image.png

有个网关 叫  192.168.10.1 

# route add -net 10.0.0.0/8 gw 192.168.10.1   (gw是关键字gateway用在这儿.via(通过 经过 取道)是关键字,用在文件中 表示下一跳)

10.0.0.8是目的地,表示网络,8表示 255.0.0.0 是表示目的地的掩码 , 192.168.10.1是下一跳 )

image.png


# route   不带任何东西是查看本地路由表

image.png

FLags  (UG) U (useful up )表示 处于启用状态  G (gateway)表示这是一个网关路由(有下一跳)

172.16.0.0 只有U没有G,表示这是一个本地网络,不需要通过任何网关就可以达到



# route del -net 10.0.0.0/8  (如果只有这一条,不用指定后面的gw 也能删除)

image.png

# route -n  (使用 -n 选项 以数字方式来显示,不会显示 default)

image.png


删除默认路由

# route del -net 10.0.0.0  (没有掩码,不需要指掩码)

# route -n

image.png


增加默认路由  default 就是 0.0.0.0 表示任意主机

# route add default gw 192.168.10.1  ( 到达任意主机都可以经过 192.168.10.1 )

image.png

# route -n

image.png



删除默认路由 这样也可以

# route del default 

# route -n

image.png


# cdnet  (进 /etc/sysconfig/network-scripts目录的别名)

# pwd

# ls 

image.png

image.png



# ifconfig

image.png


# vim ifcfg-eth1    (这是原来的dhcp)

image.png

改成下面这样     (这是改后的static)

image.png


# ifconfig                eth1 未生效

image.png


# /etc/init.d/network restart    (连上这台主机的都断了?为什么我的主机没有断呢)

image.png


# ifconfig       此时看到生效了,以后会永久有效了

image.png


# route -n 

image.png





image.png

# vim route-eth1

192.15810.0/24 via 10.10.10.254


# /etc/init.d/network restart

image.png


# route -n 

image.png



image.png 先清空它

# !/et

# route -n          (192.168.10.0这一条没有了)

image.png


image.png

# vim route-eth1

ADDRESS0=192.168.10.0

NETMASK0=255.255.255.0

GATEWAY0=10.10.10.254




# !/et  image.png

image.png



# route -n

image.png



# vim /etc/resolv.conf

image.png

比如 

# ping  www    (我这边ping 是可以的) (此时ping的是 www.example.com  /etc/resolv.conf 里面的东西了)

search 是自动补上 example.com 的功能   (还有个domain 与 search功能有点类似 见 /node-admin/12303 )


# vim /etc/hosts

image.png


# vim /etc/hosts

image.png


# ping www   (此时ping的是hosts里面的东西了)

image.png


# hostname

image.png


image.png

image.png

image.png

# hostname 

#!/etc/

# hostname 重启网络服务,还是没有生效

image.png


# hostname hello.magedu.com  (此时会立即生效)

# hostname 

image.png


 # vim /etc/sysconfig/network       

NETWORKING=yes    (本地是否启用本机的网络功能的总开关)

NETWORKING_IPV6=yes (是否启用ipv6,如果写成no,事实上不能彻底禁用ipv6,除非禁用或卸载ipv6模块)  (我们最好不要卸载ipv6吧,万一哪天需要了,还要改挺麻烦的)

HOSTNAME=localhost.localdomain

image.png

image.png

# ifconfig  我们还能看到 ipv6

image.png


 # vim /etc/sysconfig/network  可以全局配置默认网关(它是全局的),但是网卡处的默认网关的优先级比较高

            两个默认网关是可以的 ,但是没必要

GATEWAY=

image.png

两个网关可以配置,但是没有意义 (因为登录路由表的时候,自上而下匹配的时候,只选第一条)

比如 两个 一个对应电信网关 一个对应网通网关 可以使用策略路由

linux 支持多张路由表 可以指定使用哪张路由表 就会有多个默认路由了

基于某个地址路由某个条目的时候,可以指定使用哪张路由表,就会有多个默认路由了



# setup   (应该是红帽系统中的命令吧)             

   system-config-network-tui(文本图形界面,不需要图形化窗口中的环境)   

   system-config-network-gui(图文化界面,图形化窗口中的环境中才能用到)   

# export LANG=en

image.png

image.png

下图 Tab键可以切换焦点

image.png

image.png

image.png

是否使有DHCP 敲下空格键可以选择,使用DHCP后,下面的几项就不能改了

image.png


image.png

image.png

image.png

image.png


以上修改是直接修改配置文件的,不会立即生效,

要想生效,需要重启网络服务



iproute2 


ip  有许多子命令 能够实现配置ip地址,配置路由,实现路由表的各种管理等等,要使用策略路由,也能使用它完成

# ip --help

(link 设备,网络接口 addr 地址 addrlabel 标签 route路由 rule 规则,即策略路由 neigh,就是操作arp的  tunel 隧道

maddr 就是多个地址 mroute多个路由  monitor监控)

image.png



[root@ebs-22618 ~]# man ip

image.png


ip link set device  { up (网卡设备启用) | down  up (网卡设备禁用) | arp {on  ( arp功能启用 )  | off  ( arp功能禁用 ) }

promisc 混杂模式,抓包的时候有用

multicast { on (启用多播功能)| off (关闭多播功能) }

txqueuelen 传输队列的长度

name NEWNAME (给网卡改名) 当前生效,重启失效(不会生效)

mtu MTU 可以指定mtu的大小

image.png

image.png

混杂模式 抓包的时候有用

image.png

image.png

[root@ebs-22618 ~]# ip link show    查看网络接口的地址

image.png


[root@ebs-22618 ~]# ip -s link show     ( -s[statistics] 显示统计信息的) (-s statistics)


image.png


[root@ebs-22618 ~]# man ip

image.png




# ip link set eth1 down           禁用 eth1

# ifconfig                               此时看不到eth1了

image.png


# ip link set eth up           启用eth1

# ifconfig                               此时又看到eth1了

image.png



[root@ebs-22618 ~]# man ip

image.png



# ifconfig eth0:0 172.16.200.33/16

# ifconfig

image.png


# ping 172.16.200.33

image.png



# man ip

image.png

image.png




# ip addr add 10.2.2.2/8 dev eth1

# ifconfig             这个命令看不到

image.png

# ping 10.2.2.2  可以ping通

image.png


# ip addr show         (可以看到) (secondary 第二地址,非主要地址,辅助地址)

image.png


# man ip


image.png



# ip addr add 10.3.3.3/8 dev eth1 label eth1:1        (加个别名)

# ifconfig       (只要有别名,就能够显示出来)

image.png


image.png


# ip addr show

secondary 是辅助的意思(第二的意思),不是第二个的意思 

image.png



# ip addr del 10.2.2.2/8 dev eth1

# ip addr show    ( 10.2.2.2/8  它没有了)

image.png


image.pngdev NAME

to PREFIX 只显示跟它的前部分相匹配的地址


label PATTERN 只显示某个label的地址,马哥没有举例

image.png



# ip addr add 192.168.100.3/24 dev eth1 label eth1:0


# ip addr show eth1        只显示这个接口 (设置) 上的地址

image.png


image.pngdev NAME ( 这里为 eth1 )

to PREFIX   ( 这里为 192.168.100 )只显示跟它的前部分相匹配的地址  以192.168.100为前缀的(24位掩码的)地址

# ip addr show eth1 to 192.168.100/24

image.png


# ip addr show eth1 to 10/8

image.png


# man ip


image.png


# ip addr flush eth1 to 10/8            清空删除地址

# ip addr show eth1        

image.png



# man ip  

 (blackhole 下一跳?是黑洞)(引向黑洞)(地址不可达,报文悄悄丢弃,别人都不知道)

 (unreachable 下一跳?是不可达,如何不让本机访问特定网络的话(应该不让自己访问别人,不让别人访问自己都可以吧),,,,别人也不知道我到底在不在线)

(prohibit 明确告诉别人,我在线,但是就是不让你ping)

image.png

image.png

image.png


image.png



image.png

ip route flush  可以后面 to PREFIX(与ip addr flush 一样)


[root@ebs-22618 ~]# route -n

[root@ebs-22618 ~]# ip route show

image.png


# ifconfig

image.png


# ip route add to 10.0.0.0/8 dev eth0 via 172.16.0.1    ( 10.0.0.0是目的地(可以是一个网络,也可以是一个主机) 8表示 255.0.0.0 是表示目的地的掩码 , 172.16.0.1是下一跳, dev eth0表示通过这个网卡 )

# route -n

image.png


# ip route flush to 10/8

# route -n

image.png


 ip  的策略路由比较麻烦,暂时马哥没讲

#  tc  使用tc (traffic control) 实现流量控制 (来自哪个地址,通过哪个网卡的,最多给多少带宽,一天可以使用多少流量,都可以定义)


我自己的 /etc/sysconfig/network-scripts/ifcfg-eth0

image.png

改成了 

image.png


自己亲自做的例子

[root@mail ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

# Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE]

DEVICE=eth0

BOOTPROTO=static

IPADDR=192.168.0.95

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

HWADDR=00:0C:29:EC:30:EF

ONBOOT=yes

PEERDNS=no

TYPE=Ethernet            #一般TYPE分为以太网(Ethernet)、令牌网(Token Ring)、FDDI网、异步传输模式网(ATM)等等, 默认就是以太网吧



使用 NAT 配置实例 使用手动dhcp 自动ip地址  我自己亲自做的

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"

PROXY_METHOD="none"

BROWSER_ONLY="no"

BOOTPROTO="dhcp"

DEFROUTE="yes"

IPV4_FAILURE_FATAL="no"

IPV6INIT="yes"

IPV6_AUTOCONF="yes"

IPV6_DEFROUTE="yes"

IPV6_FAILURE_FATAL="no"

IPV6_ADDR_GEN_MODE="stable-privacy"

NAME="ens33"

UUID="9aef33b4-3eb5-486d-9941-713c508731eb"

DEVICE="ens33"

ONBOOT="yes"

IPV6_PRIVACY="no"


使用 NAT 配置实例 使用手动固定ip地址    我自己亲自做的

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"

PROXY_METHOD="none"

BROWSER_ONLY="no"

BOOTPROTO="static"

DEFROUTE="yes"

IPV4_FAILURE_FATAL="no"

IPV6INIT="yes"

IPV6_AUTOCONF="yes"

IPV6_DEFROUTE="yes"

IPV6_FAILURE_FATAL="no"

IPV6_ADDR_GEN_MODE="stable-privacy"

NAME="ens33"

UUID="97503e7e-2ce4-48a0-bb23-deb0d7a5e3c4"

DEVICE="ens33"

ONBOOT="yes"

IPV6_PRIVACY="no"

IPADDR=192.168.46.127

NETMASK=255.255.255.0

GATEWAY=192.168.46.2

HWADDR=00:0C:29:26:1E:8C

PEERDNS="no"


同时在

[root@localhost ~]# vim /etc/resolv.conf

# Generated by NetworkManager

nameserver 192.168.46.2


本机主机的配置

image.png

普通分类: