配置Linux网络属性:ip命令

  ip [ OPTIONS ] OBJECT { COMMAND | help }

    OBJECT := { link | addr | route }

  link OBJECT:

    ip link  -  network device configuration

      set

        dev IFACE

        可设置属性:

          up and down:激活或禁用指定接口;

      show

        [dev IFACE]:指定接口

        [up]:仅显示处理激活状态的接口

    ip address  -  protocol address management

      ip addr { add | del } IFADDR dev STRING

        [label Label]:添加地址时指明网卡别名

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

          global:全局可用;

          link:仅链接可用;

          host:本机

        [broadcast ADDRESS]:指明广播地址

      ip addr show  -  look at protocol address

        [dev DEVICE]

        [label PATTERN]

        [primary and secondary]

      ip addr flush  -  flush protocol address

        使用格式同show

    ip route  -  routing table management

      ip route add

        添加路由:ip route add TARGET via GW dev IFACE src SOURCE_IP

          TARGET:

            主机路由:IP

            网络路由:NETWORK/MASK

          添加网关:ip route add default via GW dev IFACE

      ip route delete

        删除路由:ip route del TARGET

      ip route show

      ip route flush

        [dev IFACE]

        [via PREFIX]

  

  ss命令:

    格式:ss [options]... [ FILTER ]

      选项:

        -t:tcp协议相关

        -u:udp协议相关

        -w:裸套接字相关

        -x:unix sock相关

        -l:listen状态的连接

        -a:所有

        -n:数字格式

        -p:相关的程序及PID

        -e:扩展的信息

        -m:内存用量

        -o:计时器信息

        FILTER:= [ state TCP-STATE ] [ EXPRESSION ]

    TCP的常见状态:

      tcp finite state machine:

        LISTEN:监听

        ESTABLISHED:已建立的连接

        FIN_WAIT_1

        FIN_WAIT_2

        SYN_SENT

        SYN_RECV

        CLOSED

      EXPRESSION:

        dport =

        sport =

        示例:‘(deport = :ssh or sport = :ssh)’

    常用组合:

      -tan,-tanl,-tanlp,uan

Linux网络属性配置(3):修改配置文件

  IP、MASK、GW、DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE

  路由相关的配置文件:/etc/sysconfig/network-scripts/route-IFACE  # 此文件默认是不存在的

  /etc/sysconfig/network-scripts/ifcfg-IFACE:

    DEVICE:此配置文件应用到的设备;

    HWADDR:对应的设备的MAC地址;

    BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp,static,none,bootp;

    NM_CONTROLLED:NM是networkManager的简写:此网卡是否接受NM控制:Centos6建议为"no"

    ONBOOT:在系统引导时是否激活此设备;

    TYPE:接口类型;常见的有Ethernet,Bridge

    UUID:设备的惟一标识;

    IPADDR:指明IP地址;

    NETMASK:子网掩码;

    GATEWAY:默认网关;

    DNS1:第一个DNS服务器指向;

    DNS2:第二个DNS服务器指向;

    USERCTL:普通用户是否可控制此设备;

    PEERDNS:如果BOOTPROTO的值为"dhcp",是否允许dhcp server分配 的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中;

  

  /etc/sysconfig/network-scripts/route-FIACE

    两种风格:

      (1) TARGET via GW

      (2) 每三行定义一条路由

        ADDRESS#=TARGET

        NETMASK#=mask

        GATEWAY#=GW

给网卡配置多地址:

  ifconfig:

    ifconfig IFACE_ALIAS

  ip

    ip addr add

  配置文件:

    ifcfg-IFACE_ALIAS

      DEVICE=IFCACE_ALIAS

  注意:网关别名不能使用dhcp协议引导;

Linux网络属性配置的tui(text user interface):

  system-config-network-tui

  也可以使用setup找到;

  注意:记得重启网络服务方能生效;

配置当前主机的主机名:

  hostname [HOSTNAME]

  /etc/sysconfig/network

  HOSTNAME=

如果什么都配置好了,但是还是上不了网,有可能是/etc/sysconfig/network的网络功能没开。

此功能未开的话,执行service network restart命令是没有反应的。

网络接口识别并命名相关的udev配置文件:

  /etc/udev/rules.d/70-persistent-net.rules

  卸载网卡驱动:

    modprobe  -r  e1000

  装载网卡驱动:

    modprobe e1000

Centos 7网络属性配置

  传统命名:以太网eth[0,1,2,....],wlan[0,1,2,....]

  可预测功能

    udev支持多种不同的命令方案:

      Firmware,拓扑结构

  (1) 网卡命名机制

    systemd对网络设备的命令方式:

      (a) 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测根据此索引进行命令,例如eno1;

      (b) 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,例如ens1;

      (c) 如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0;

      (d) 如果用户显示启动,也可根据MAC地址进行命名,enx2387a1dc56;

        (e) 上述均不可用时,则使用传统命名机制;

      上述命名机制中,有的需要biosdevname程序的参与;

  (2) 名称组成格式

    en:ethernet

    wl:wlan

    ww:wwan

    名称类型:

      o<index>:集成设备的设备索引号;onboard

      s<slot>:扩展槽的索引号;

      x<MAC>:基于MAC地址的命名;

      p<bus>s<slot>:enp2s1;pci

  网卡设备的命名过程:

    第一步:

      udev,辅助工具程序/lib/udev/rename_device,/usr/lib/udev/rules.d/60-net.rules

    第二步:

      biosdevname 根据/usr/lib/udev/rules.d/71-biosdevname.rules

    第三步:

      通过检测网络接口设备,根据/usr/lib/udev/rules.d/75-net-description

        ID_NET_NAME_ONBOARD,ID_NET_NAME_SLOT,ID_NET_NAME-PATH

  回归传递命名方式:

    (1) 编辑/etc/default/grub配置文件

      GRUB_CMDLINE_LINUX="net.ifnames=0 rhgb quiet"

    (2) 为grub2生成其配置文件

      grub2-mkconfig -o /etc/grub2.cfg

    (3) 重启系统

  地址配置工具:nmcli

    nmcli  [ OPTIONS ] OBJECT { COMMAND | help }  这一个工具Centos6和7上的介绍不一样。

      

    如何修改IP地址等属性:

      nmcli connection modify IFACE [+|-]setting.property value

        setting.property:

          ipv4.addresses

          ipv4.gateway

          ipv4.dns1

          ipv4.method

            manual

  网络接口配置tui工具:nmtui

  主机名称配置工具:hostnamectl

    status

    set-hostname

博客作业:上述所有内容;

  ifcfg,ip/ss,配置文件,nmcli

参考资料:http://www.redhat.com/hdocs

课外作业:nmap,ncat,tcpdump工具

网络客户端工具:

  lftp,ftp,lftpget,wget

    # lftp [-p port]  [-u user[,password]] SERVER

      子命令:

        get

        mget

        ls

        help

    # lftpget URL

    # ftp

    # wget

      wget [option]...[URL]...

        -q:静默模式

        -c:续传

        -O:保存位置

        --limit-rates=: 指定传输速率

    

  

Linux:Day11(下) ip命令及配置文件方式的更多相关文章

  1. [r]Ubuntu Linux系统下apt-get命令详解

    Ubuntu Linux系统下apt-get命令详解(via|via) 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package ...

  2. 如何解决Linux 系统下 ifconfig 命令无网络接口 ens33

    今天我在做Redis的哨兵集群模式的时候,以前都是好的,也不知道从什么时候开始就无法连接Redis服务器了,就是运行如下命令,没有效果:redis-server redis.conf,然后在通过命令查 ...

  3. Ubuntu Linux系统下apt-get命令详解

    整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家.常用的APT命令参数: apt-cache search package 搜索包 apt-cache show pac ...

  4. 在Linux系统下mail命令的用法

    在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...

  5. Linux系统下RPM命令和yum的使用

    Linux系统下RPM命令和yum的使用 RPM:Redhat Packages Manager (红帽系列软件包的管理),主要用于安装.卸载.升级和管理软件. 一个包由下面几个部分构成: 例如:ht ...

  6. Linux系统下jar包的启动方式

    Linux 运行jar包命令如下: 方式一: Java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? ...

  7. Linux系统下 为命令配置别名

    1.什么是别名 在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁的输入某个很长命令或用法是不可取的.这时可以使用 别名 功能将这个过程简单化. Li ...

  8. linux环境下,springboot jar启动方式

    linux环境下,springboot jar启动方式 一.前台启动(ctrl+c会关掉进程) java -jar application.jar 二.后台启动(ctrl+c不会关闭) java -j ...

  9. linux 下ip命令对比ifconfig命令

    原文:https://linux.cn/article-3144-1.html ------------------------------------------------------------ ...

随机推荐

  1. 16-pymysql模块的使用

    [转]16-pymysql模块的使用 本节重点: pymysql的下载和使用 execute()之sql注入 增.删.改:conn.commit() 查:fetchone.fetchmany.fetc ...

  2. jQuery插件开发进阶

    jQuery插件开发模式 软件开发过程中是需要一定的设计模式来指导开发的,有了模式,我们就能更好地组织我们的代码,并且从这些前人总结出来的模式中学到很多好的实践. 根据<jQuery高级编程&g ...

  3. MongoDB日志文件过大的解决方法

    MongoDB的日志文件在设置 logappend=true 的情况下,会不断向同一日志文件追加的,时间长了,自然变得非常大. 解决如下:(特别注意:启动的时候必须是--logpath指定了log路径 ...

  4. 吴恩达机器学习笔记 —— 7 Logistic回归

    http://www.cnblogs.com/xing901022/p/9332529.html 本章主要讲解了逻辑回归相关的问题,比如什么是分类?逻辑回归如何定义损失函数?逻辑回归如何求最优解?如何 ...

  5. Python函数式编程(一):高级函数

    首先有一个高级函数的知识. 一个函数可以接收另一个函数作为参数,这种函数就称之为高阶函数. def add(x, y, f): return f(x) + f(y) 当我们调用add(-, , abs ...

  6. Node.js学习记录(一)--安装设置篇

    安装Node window window上安装node可选择以下两种方式: 方式一:直接进入官网下载安装 进入node.js官网点击windows,选择.msi后缀的,根据自己的电脑选择对应的64位或 ...

  7. DOIS 2018 — OneAPM 蓝海讯通以数据为中心的 AIOps 平台亮相

    AIOps 近两年开始在运维圈子里面火了起来.一夜间传统和新兴的运维管理软件供应商,IT 运维系统开发商,大数据厂商,人工智能算法提供商,还有 BAT,大家都在谈论这个话题.在短短的不到 1 年时间中 ...

  8. 使用VSTS的Git进行版本控制(三)——评审历史记录

    使用VSTS的Git进行版本控制(三)--评审历史记录 Git使用存储在每个提交中的父引用信息来管理开发的完整历史记录.评审该提交历史记录,能够找出文件更改的时间,并确定代码版本之间的差异. Git使 ...

  9. 微信小程序中的循环遍历问题

    比如:如果在微信小程序中要遍历输出 0-9 的数,我们会使用for循环 ;i<;i++){ console.log(i); } 确实结果也是这样: 但是,如果我在循环时同时调用wx的api接口1 ...

  10. SQL Server如何定位自定义标量函数被那个SQL调用次数最多浅析

    前阵子遇到一个很是棘手的问题,监控系统DPA发现某个自定义标量函数被调用的次数非常高,高到一个离谱的程度.然后在Troubleshooting这个问题的时候,确实遇到了一些问题让我很是纠结,下文是解决 ...