网络配置工具iproute2和net-tools的基本原理和基本使用方法
这是网络程序设计课程的第一次作业的博客,由于还是小白,分享的内容都是比较基础的东西,希望看到的各位同学可以提出指导意见,必将虚心听取。
这次分享的内容是网络配置工具iproute2和net-tools的原理和基本使用方法,由于之前未接触过这方面的东西,因此都是对基本命令进行验证并给出自己的一点思考。
一、原理
网络配置工具是用来检测网络状态及配置相关信息的辅助性工具,iproute2是linux下管理控制TCP/IP网络和流量控制的新一代工具包,出现目的是替代老工具链net-tools,查阅一些资料获悉,net-tools是通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置,而iproute2通过netlink套接字接口与内核通讯,在多个任务的情况下,iproute的效率会更高,这两个与内核通信的不同方式便是这两个工具链的最本质区别。
二、基本使用
1、ip addr show(ip a)和ifconfig -a的作用一样,可以查看网卡设备
ip a,可以看到有两个网卡,ens33这个网卡的up显示网络连接正常

2、启用网络设备 sudo ip link set up ens33
3、配置临时ip
(1)iproute2配置临时sudo ip addr add 192.168.1.100/24 dev ens33,这种方式添加的临时的,设备重启后会被释放

(2)net-tools的方式:需要加别名才不会覆盖原来的ip地址,否则是会覆盖的

4、删除临时ip
(1)sudo ip addr del 192.168.1.100/24 dev ens33

(2)sudo ifconfig ens33:0 192.168.1.101/24 down

5、修改mac地址(也是临时的)
不常用,实际上修改的也不是物理地址,而是虚拟的物理地址
sudo ip link set dev ens33 address 00:ff:ff:ff:ff:ff

6、查看路由
(1)ip route show(ip r) 可以看到该路由器的默认路由和两条默认路由

(2)route -n 0.0.0.0是指任何ip目的地址,都需要先转发到默认路由

7、设置默认路由
(1)删除默认路由后,没有默认路由则不能上网

(2)sudo ip route add default via 192.168.8.1 dev ens33
设置了默认路由后才能联网,注意默认路由不能随便设置

若使用不正确的默认路由,则会全部丢包

(3)net-tools的方法设置路由

8、查看ARP信息
(1)ip neigh (ip n)

(2)arp -an

9、查看本地TCP监听
(1)ss -ltp

可以看到上面本地启动了两个连接的服务,分别是ssh和ipp协议,后面的两行是一样的,不过他们使用的是ipv6
(2)netstat -tnlp,加了n之后会把ssh和ipp协议转成端口号

(3)这两个工具的主要区别就是在这里,iproute2使用的ss连接,net-tools使用的是原始的
10、查看所有的tcp连接
(1)ss -tn

(2)netstat -nt

三、总结
这是第一次写博客,也是第一次学网络相关命令,由于基础还不好,整个学习过程中花了很多时间去研究相关命令出现的错误。不过还是学到很多东西,对计算机网络上面的理论知识有了更加深刻的理解,以前觉得那些知识只是理论上这个样子,离我们很远,经过这次的学习,我知道了计算机学科作为应用学科的意义,我们的理论知识就是来自于实际,理论怎样描述的,计算机实际上就是怎样工作。希望通过自己的坚持学习,能够从小白变成一个真正的技术人!
网络配置工具iproute2和net-tools的基本原理和基本使用方法的更多相关文章
- CentOS 7网络配置工具
CentOS 7网络配置工具 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.网卡命名机制 CentOS 6之前,网络接口使用连续号码命名:eth0.eth1等,当增加或删除网卡 ...
- 10.6 ip:网络配置工具
ip命令是iproute软件包中的一个强大的网络配置工具,用于显示或管理Linux系统的路由.网络设备.策略路由和隧道. ip [option] [object] [command] ip [选项 ...
- linux 无线网络配置工具wpa_supplicant与wireless-tools
4.a. 介绍目前您可以使用我们提供的wireless-tools 或wpa_supplicant工具来配置无线网络.请记住重要的一点是,您对无线网络的配置是全局性的,而非针对具体的接口.wpa_su ...
- Ubuntu 16.04通过网络配置工具NetworkManager设置IP、网关、DNS和查看IP、网关、DNS
说明: 1.NetworkManager工具是Ubuntu桌面版的GUI设置工具. 2.这个工具推荐直接在GUI上操作,不建议用命令行进行管理,比如Wifi这些配置等. 3.当然,这个工具能带有命令行 ...
- CentOS 7 网络配置工具
之前在CentOS 6下编辑网卡,直接使用setup工具就可以了. 但在新版的CentOS 7里,setuptool已经没有网络编辑组件了,取而代之的是NetworkManager Text User ...
- Ubuntu 16.04桌面版GUI网络配置工具NetworkManager的命令行工具nm-tool无法使用的问题
说明: 1.Ubuntu中分桌面版和服务器版,而这两个版本在网络管理方面使用的工具都不一样,尤其是在桌面版,使用了NetworkManager进行管理. 2.服务器版使用的是命令行配置,而桌面版包含了 ...
- CentOS 7 下的网络配置工具
之前在CentOS 6下编辑网卡,直接使用setup工具就可以了. 但在新版的CentOS 7里,setuptool已经没有网络编辑组件了,取而代之的是NetworkManager Text User ...
- linux网络配置(iproute2)
iproute2家族 ip命令:show / manipulate routing,devices,policy routing and tunnels(显示/操纵路由.设备.策略路由和隧道) 语法 ...
- Linux用户空间网络配置工具tips
1.当调用`ifconfig eth0 down`命令关闭网络设备eth0时,会产生如下影响: 所有配置在该网卡上的IP地址都将失效并且被移除 (在ubuntu 14.04上测试,IP并不会被移除,重 ...
随机推荐
- PL真有意思(二):程序设计语言语法
前言 虽然标题是程序语言的语法,但是讲的是对词法和语法的解析,其实关于这个前面那个写编译器系列的描述会更清楚,有关语言语法的部分应该是穿插在整个设计当中的,也看语言设计者的心情了 和英语汉语这些自然语 ...
- 万恶之源-python的进化
列表 列表的增删改查 3. 列列表的嵌套 元组和元组嵌套 5. range ⼀一. 列表 1.1 列表的介绍 列表是python的基础数据类型之⼀一 ,其他编程语⾔言也有类似的数据类型. 比如JS中的 ...
- 设计模式之美学习(九):业务开发常用的基于贫血模型的MVC架构违背OOP吗?
我们都知道,很多业务系统都是基于 MVC 三层架构来开发的.实际上,更确切点讲,这是一种基于贫血模型的 MVC 三层架构开发模式. 虽然这种开发模式已经成为标准的 Web 项目的开发模式,但它却违反了 ...
- LMS自适应天线阵列设计 MATLAB
在自适应天线课上刚刚学了LMS自适应阵,先出一个抢先版贴一下结果,抢先某个小朋友一步. 关于LMS的具体介绍,直接看wiki里的吧,解释的比书上简明:传送门:https://en.wikipedia. ...
- JAVA——汉诺塔
大家还记得某年春晚小品那个把大象放冰箱需要几步吗? 今天,我准备写的是汉诺塔,有三个魔法石柱,分别:诚实.勇敢.正直.其中有一个石柱上从大到小,从地向上依次排放着四个魔法圆环,需要将那四个魔法圆环分别 ...
- cropperjs实践及中文文档(自译)
cropperjs是一款非常强大却又简单的图片裁剪工具,它可以进行非常灵活的配置,支持手机端使用,支持包括IE9以上的现代浏览器.(关键是使用方法简单,几行代码就可以搞定) 实践效果图 如图,可以对指 ...
- Git学习笔记01--常用Git命令、cmd命令及Git总结性知识
资源:外国网友制作的 Git Cheat Sheet 第二次学习廖雪峰老师的Git教程,学习过程中把教程中涉及到的Git命令及总结性知识记录下来方便二次复习. 知识点 所有的版本控制系统,其实只能跟踪 ...
- JavaScript 数组学习总结
类数组转数组 ES5解决方案 let arr = Array.prototype.slice.call(arrlike) ES6解决方案 let arr = Array.from(arrlike) / ...
- SpringMVC请求参数接收总结(一)
前提 在日常使用SpringMVC进行开发的时候,有可能遇到前端各种类型的请求参数,这里做一次相对全面的总结.SpringMVC中处理控制器参数的接口是HandlerMethodArgumentRes ...
- Celery框架实现异步执行任务
Celery 官方 Celery 官网:http://www.celeryproject.org/ Celery 官方文档英文版:http://docs.celeryproject.org/en/la ...