一,为什么建议使用ip命令代替ifconfig?

1,ifconfig所属的net-tools包已经不再被维护了

虽然可以用,但会发生看不到部分ip等情况,

[root@centos8 liuhongdi]# whereis ifconfig
ifconfig: /usr/sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz [root@centos8 liuhongdi]# rpm -qf /usr/sbin/ifconfig
net-tools-2.0-0.51.20160912git.el8.x86_64

2,ip命令属于iproute这个包,是linux重点推荐的命令

大家过去用ifconfig成习惯的,还是要转到ip这个命令上来

[root@centos8 liuhongdi]# whereis ip
ip: /usr/sbin/ip /usr/share/man/man7/ip.7.gz /usr/share/man/man8/ip.8.gz [root@centos8 liuhongdi]# rpm -qf /usr/sbin/ip
iproute-4.18.0-15.el8.x86_64

如果找不到ip命令,可以用dnf安装

[root@centos8 liuhongdi]# dnf install iproute

3,ip命令的操作并未写入到磁盘中,当服务器重启时,这些配置会丢失,

所以大家如果是需要永久性保存的配置,建议使用nmcli做配置

请移动这一篇:

https://www.cnblogs.com/architectforest/p/12612562.html

说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,查看ip命令的版本和帮助:

1,查看版本

[root@centos8 liuhongdi]# ip -V
ip utility, iproute2-ss180813

2,查看帮助:

[root@centos8 liuhongdi]# ip -help 

3,查看手册

[root@centos8 liuhongdi]# man ip

三,ip命令之link(网络设备)管理

link指network device,网络设备

1,列出所有的link

[root@centos8 liuhongdi]# ip link

2,只看指定的link设备

[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

3,查看指定link设备的收发包统计信息

# -s: 显示statistics

[root@centos8 liuhongdi]# ip -s link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
11593445 60054 0 0 0 0
TX: bytes packets errors dropped carrier collsns
164314 2331 0 0 0 0

4,只显示当前激活的网络设备

[root@centos8 liuhongdi]# ip link show up

5,停用一个网络设备

[root@centos8 liuhongdi]# ip link set ens33 down
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

注意 state是 DOWN

6,启用一个网络设备

[root@centos8 liuhongdi]# ip link set ens33 up
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

注意 state已恢复为UP

7,查看针对link可以做的操作:

[root@centos8 liuhongdi]# ip link set help

可以做的操作很多

比较常用的应该是修改mtu

8,关闭打开link的多播(multicast)功能:

[root@centos8 liuhongdi]# ip link set ens33 multicast off
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可以看到MULTICAST已经被关闭了

[root@centos8 liuhongdi]# ip link set ens33 multicast on
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可以看到MULTICAST已经被再次打开

9,配置link的mtu的大小

[root@centos8 liuhongdi]# ip link set ens33 mtu 1000
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1000 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可以看到mtu已经被改成了1000

[root@centos8 liuhongdi]# ip link set ens33 mtu 1500
[root@centos8 liuhongdi]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可以看到mtu已经被改回了1500

说明:什么是mtu?

Maximum Transmission Unit 最大传输单元,就是数据包封包的最大值,

超过这个值就需要拆分成多个包发送

mtu过大或过小有什么影响?

1、本地MTU值大于网络MTU值时,本地传输的数据包过大导致网络会拆包后传输,不但产生额外的数据包,而且消耗了“拆包、组包”的时间。

2、本地MTU值小于网络MTU值时,本地传输的数据包可以直接传输,但是未能完全利用网络给予的数据包传输尺寸的上限值,传输能力不能完全发挥

可见过大或过小会带来网络的不稳定(丢包)或网速过慢

建议:就使用默认值1500就很安全,当网络有不正常现象时,

我们可以查看mtu是否被人为修改过以致产生网络异常

10,修改link的名字

说明:网卡运行时不能改名:

[root@centos8 liuhongdi]# ip link set ens33 name ens33link
RTNETLINK answers: Device or resource busy

先停用

[root@centos8 liuhongdi]# ip link set ens33 down
[root@centos8 liuhongdi]# ip link set ens33 name ens33link

改名完成后再激活

[root@centos8 liuhongdi]# ip link set ens33link up
[root@centos8 liuhongdi]# ip link show ens33link
2: ens33link: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

11,修改link的mac地址:

[root@centos8 liuhongdi]# ip link show ens33link
2: ens33link: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可以看到 mac地址是:00:0c:29:bb:c5:a6

[root@centos8 liuhongdi]# ip link set ens33link down
[root@centos8 liuhongdi]# ip link set ens33link address 00:0c:29:bb:c5:a7 [root@centos8 liuhongdi]# ip link set ens33link up
[root@centos8 liuhongdi]# ip link show ens33link
2: ens33link: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a7 brd ff:ff:ff:ff:ff:ff

说明:可以看到网卡地址已被修改成了00:0c:29:bb:c5:a7

四,ip命令之address(ip地址)管理

1,查看所有的ip地址:

# a,address,addr: 都是ip地址

[liuhongdi@centos8 ~]$ ip a

2,查看指定设备的ip

[root@centos8 liuhongdi]# ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.14/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 83751sec preferred_lft 83751sec
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever

3,分别查看设备的ipv4地址和ipv6地址

#-4 :显示ipv4地址

[root@centos8 liuhongdi]# ip -4 a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.3.35/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 85737sec preferred_lft 85737sec
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever

#-6 :显示ipv6地址

[root@centos8 liuhongdi]# ip -6 a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever

4,添加ip

[root@centos8 liuhongdi]# ip a add 192.168.5.15/24 dev ens33link
[root@centos8 liuhongdi]# ip a show ens33link
2: ens33link: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a7 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.37/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33link
valid_lft 85844sec preferred_lft 85844sec
inet 192.168.5.15/24 scope global ens33link
valid_lft forever preferred_lft forever
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33link
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:febb:c5a7/64 scope link
valid_lft forever preferred_lft forever

可以看到ip已添加成功

5,删除ip

[root@centos8 liuhongdi]# ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
inet 192.168.5.8/24 brd 192.168.5.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.3.35/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 86144sec preferred_lft 86144sec
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever

192.168.5.8/24是我们要删除的ip

[root@centos8 liuhongdi]# ip a del 192.168.5.8/24 dev ens33
[root@centos8 liuhongdi]# ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.35/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 86019sec preferred_lft 86019sec
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever

删除成功了

6,清除ip:指定ip

#flush: 清除ip

[root@centos8 liuhongdi]# ip a add 192.168.5.15/24 dev ens33
[root@centos8 liuhongdi]# ip a ls dev ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.35/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 80454sec preferred_lft 80454sec
inet 192.168.5.15/24 scope global ens33
valid_lft forever preferred_lft forever
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever [root@centos8 liuhongdi]# ip a flush to 192.168.5.15/24
[root@centos8 liuhongdi]# ip a ls dev ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.35/24 brd 192.168.3.255 scope global dynamic noprefixroute ens33
valid_lft 80398sec preferred_lft 80398sec
inet 192.168.3.13/24 brd 192.168.3.255 scope global secondary noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::2785:9624:cea4:c935/64 scope link noprefixroute
valid_lft forever preferred_lft forever

7,清除ip: 指定设备:

[root@centos8 liuhongdi]# ip a flush dev ens33
[root@centos8 liuhongdi]# ip a ls dev ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff

可见ens33这个设备上已经没有ip了

五, ip命令使用例子之route管理

1,查看路由表

#ip r 等于 ip route,查看路由

[root@centos8 liuhongdi]# ip r
default via 192.168.3.1 dev ens33 proto static metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.13 metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.14 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

2,添加默认路由

[root@centos8 liuhongdi]# ip route add default via 192.168.5.2 dev ens33
[root@centos8 liuhongdi]# ip r
default via 192.168.5.2 dev ens33
default via 192.168.3.1 dev ens33 proto static metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.13 metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.35 metric 100
192.168.5.0/24 dev ens33 proto kernel scope link src 192.168.5.8 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

3,删除默认路由

[root@centos8 liuhongdi]# ip route del default via 192.168.5.2 dev ens33
[root@centos8 liuhongdi]# ip r
default via 192.168.3.1 dev ens33 proto static metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.13 metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.35 metric 100
192.168.5.0/24 dev ens33 proto kernel scope link src 192.168.5.8 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

4,修改默认路由

[root@centos8 liuhongdi]# ip route add default via 192.168.5.2 dev ens33
[root@centos8 liuhongdi]# ip r
default via 192.168.5.2 dev ens33
default via 192.168.3.1 dev ens33 proto static metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.13 metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.35 metric 100
192.168.5.0/24 dev ens33 proto kernel scope link src 192.168.5.8 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
[root@centos8 liuhongdi]# ip route replace default via 192.168.5.4 dev ens33
[root@centos8 liuhongdi]# ip r
default via 192.168.5.4 dev ens33
default via 192.168.3.1 dev ens33 proto static metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.13 metric 100
192.168.3.0/24 dev ens33 proto kernel scope link src 192.168.3.35 metric 100
192.168.5.0/24 dev ens33 proto kernel scope link src 192.168.5.8 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

5,设置到网络49.7.40/24的路由经过网关192.168.5.8

[root@centos8 liuhongdi]# ip route add 49.7.40/24 via 192.168.5.8
[root@centos8 liuhongdi]# ip r
default via 192.168.3.1 dev ens33 proto static metric 100
49.7.40.0/24 via 192.168.5.8 dev ens33

6,从路由表中删除一条记录:

[root@centos8 liuhongdi]# ip route del 49.7.40.0/24 via 192.168.5.8 dev ens33

六,ip命令使用例子之统计信息

# -s :统计信息

[root@centos8 liuhongdi]# ip -s link ls ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
3635277 17405 0 0 0 0
TX: bytes packets errors dropped carrier collsns
24862 301 0 0 0 0

# -s -s :统计信息,增加了 tx rx的错误信息

[root@centos8 liuhongdi]# ip -s -s link ls ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:bb:c5:a6 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
3638862 17421 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
24862 301 0 0 0 0
TX errors: aborted fifo window heartbeat transns
0 0 0 0 2

七, ip命令使用例子之arp

1,查看mac地址的arp表

[root@centos8 liuhongdi]# ip neigh
192.168.3.1 dev ens33 lladdr fc:94:35:07:73:77 STALE
192.168.5.4 dev ens33 FAILED

2,添加一个mac和ip的对应项

[root@centos8 liuhongdi]# ip neigh add 192.168.1.100 lladdr 00:0c:29:c0:5a:ef dev ens33
[root@centos8 liuhongdi]# ip neigh
192.168.3.1 dev ens33 lladdr fc:94:35:07:73:77 STALE
192.168.1.100 dev ens33 lladdr 00:0c:29:c0:5a:ef PERMANENT
192.168.5.4 dev ens33 FAILED

添加已成功

3,删除一个mac和ip的对应项

[root@centos8 liuhongdi]# ip neigh del 192.168.1.100 lladdr 00:0c:29:c0:5a:ef dev ens33
[root@centos8 liuhongdi]# ip neigh
192.168.3.1 dev ens33 lladdr fc:94:35:07:73:77 STALE
192.168.5.4 dev ens33 FAILED

删除成功

八,查看centos版本

[root@centos8 conf]# cat /etc/redhat-release
CentOS Linux release 8.1.1911 (Core)

centos8平台使用ip命令代替ifconfig管理网络的更多相关文章

  1. ip命令和ifconfig命令(转载)

    Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  2. 试试Linux下的ip命令,ifconfig已经过时了

    linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

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

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

  4. centos7 的Linux下ip命令替换ifconfig命令的用法

    linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  5. linux ip命令和ifconfig命令

    From https://blog.csdn.net/freeking101/article/details/68939059

  6. CentOS8中进行IP和主机名的网络配置的过程图解

    摘要: 很多人不知道如何在字符界面下配置主机名和ip,所以写了这个文章,本人也是新手,希望指出错误与不足.(本文只是在字符界面下教程) 一.输入你的账号密码登录 1)ifconfig 查看你目前的 主 ...

  7. Linux下的ip命令,除了ifconfig还有很多

    linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  8. ip 命令

    Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  9. linux命令总结之ip命令

    Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

随机推荐

  1. Java简介以及入门

    JAVA基础知识 Java简介 作者:詹姆斯·高斯林(James Gosling) Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此J ...

  2. Django 仿ajax传递数据(Django十)

    之前用form表单传递数据,没有遇到任何问题 具体见:https://blog.csdn.net/qq_38175040/article/details/104867747 然后现在我想用ajax传递 ...

  3. vue3 报错解决:找不到模块‘xxx.vue’或其相应的类型声明。(Vue 3 can not find module)

    最近在用 vue3 写一个小组件库,在 ts 文件中引入 .vue 文件时出现以下报错: 报错原因:typescript 只能理解 .ts 文件,无法理解 .vue文件 解决方法:在项目根目录或 sr ...

  4. [LeetCode]69. x 的平方根(数学,二分)

    题目 https://leetcode-cn.com/problems/sqrtx 题解 方法一:牛顿迭代法 按点斜式求出直线方程(即过点Xn,f(Xn)),然后求出直线与x轴交点,即为Xn+1: 求 ...

  5. 分布式系统监视zabbix讲解五之web监控

    Web 监控 概况 你可以使用 Zabbix 检查几个网站可用性方面. 如果要使用 Web 检测功能,必须在 编译Zabbix 的时候加入 cURL(libcurl) 的支持. 要使用 Web 监控, ...

  6. 使用监听器来启动spring -------使用监听器初始化上下文参数

    问题: 数据初始化监听器要注入spring容器的对象,必须先启动spring容器才能使用监听器初始化数据. 解决: 使用监听器来启动spring框架 问题:spring框架启动需要哪些参数? 1.需要 ...

  7. 给你的MyBatis-Plus装上批量插入的翅膀

    努力和选择,哪个更重要?关注微信公众号[天开易想]这是一位懂互联网研发和架构的户外.篮球老铁 前言 各位好,我是易哥(thinkYi). 大家有用过MyBatis-Plus(简称MP)的都知道它是一个 ...

  8. BUU reverse xxor

    下载下来的是个elf文件,因为懒得上Linux,直接往IDA里扔, 切到字符串的那个窗口,发现Congratulation!,应该是程序成功执行的表示, 双击,按'x',回车跟入 找到主函数: 1 _ ...

  9. Node.js文件上传

    Node.js express使用Multer实现文件上传html部分 <div> <h3>文件上传:</h3> 选择一个文件上传: <br/> < ...

  10. 你用对锁了吗?浅谈 Java “锁” 事

    每个时代,都不会亏待会学习的人 大家好,我是yes. 本来打算继续写消息队列的东西的,但是最近在带新同事,发现新同事对于锁这方面有一些误解,所以今天就来谈谈"锁"事和 Java 中 ...