下面就linux运维中的路由操作做一梳理: ------------------------------------------------------------------------------...运维中关于路由的一些操作 1)使用route -n命令查看Linux内核路由表 [root@dev ~]# route -n Kernel IP routing table Destination...默认没有这个文件 ,得手动创建一个 5)设置包转发 在Linux中默认的内核配置已经包含了路由功能,但默认并没有在系统启动时启用此功能; 开启Linux的路由功能可以通过调整内核的网络参数来实现,方法如下...link src 192.168.9.200 metric 1 10.2.0.0/16 dev tun0 scope link 10.0.0.0/16 dev tun0 scope link...10.1.0.0/16 dev tun0 scope link 192.168.0.0/16 dev tun0 scope link default via 192.168.9.254 dev
判断是否包含tun0、tun1 public void isDeviceInTun() { try { List all...NetworkInterface.getNetworkInterfaces()); for (NetworkInterface nif : all) { if (name.equals("tun0...获取tun0的IP地址 /** * 获取指定网卡ip地址 * * @return */ public static String getLocalIP(String
Y vermagic: 3.10.0-862.14.4.el7.x86_64 SMP mod_unload modversions signer: CentOS Linux...sig_key: E4:A1:B6:8F:46:8A:CA:5C:22:84:50:53:18:FD:9D:AD:72:4B:13:03 sig_hashalgo: sha256 在 linux...tun0 的包。...使用 tap/tun 设备需要包含头文件 #include linux/if_tun.h>,以下是完整代码。...ioctl.h> #include #include #include #include #include linux
路由匹配成功,数据包被发送到 tun0 后,tun0 发现另一端是通过 /dev/net/tun 连接到应用程序 B,就会将数据丢给应用程序 B。...一个简单的 C 程序示例如下,它每次收到数据后,都只单纯地打印一下收到的字节数: #include linux/if.h> #include linux/if_tun.h> #include <sys...的数据,会阻塞在这里,等待数据到达 > tcpdump -i tun0 现在再启动第三个窗口发点数据给 tun0,持续观察前面 tcpdump 和 mytun 的日志: # 直接 ping tun0...bridge Linux Bridge 是工作在链路层的网络交换机,由 Linux 内核模块 brige 提供,它负责在所有连接到它的接口之间转发链路层数据包。...# tun0 设备的默认速率貌似是 10Mb/s ?
icmptunnel icmptunnel 的优势在于可以穿过状态防火墙或 NAT,同样在 github 上进行下载,值得注意的是该工具只有 Linux 版。.../icmptunnel -s # 开启服务端模式 在攻击机上新开启一个终端运行: /sbin/ifconfig tun0 10.0.0.1 netmask 255.255.255.0 # 指定一个网卡...tun0,用于给隧道服务器端分配一个IP地址 (10.0.0.1) 在目标机上运行: echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all ..../icmptunnel 172.16.214.6 在目标机上新开启一个终端运行: /sbin/ifconfig tun0 10.0.0.2 netmask 255.255.255.0 # 指定一个网卡...tun0,用于给隧道服务器端分配一个IP地址 (10.0.0.2) 至此,已经通过 ICMP 建立了一个点对点隧道。
tap/tun 是什么 tap/tun 是 Linux 内核 2.4.x 版本之后实现的虚拟网络设备,不同于物理网卡靠硬件网路板卡实现,tap/tun 虚拟网卡完全由软件来实现,功能和硬件实现完全没有差别...,它们都属于网络设备,都可以配置 IP,都归 Linux 网络设备管理模块统一管理。...用户空间与内核空间的数据传输 在 Linux 中,用户空间和内核空间的数据传输有多种方式,字符设备就是其中的一种。...协议栈根据数据包的目的 IP 地址,匹配路由规则,发现要从 tun0 出去。 tun0 发现自己的另一端被应用程序 B 打开了,于是将数据发给程序 B....在这个流程中,应用程序 B 的作用其实是利用 tun0 对数据包做了一层隧道封装。其实 tun 设备的最大用途就是用于隧道通信的。
openshift封装了k8s,在网络上结合ovs实现了多租户隔离,对外提供服务时报文需要经过ovs的tun0接口。...下面就如何通过tun0访问pod(172.30.0.0/16)进行解析(下图来自理解OpenShift(3):网络之 SDN,删除了原图的IP) ?...,因此外部流量首先会达到tun0,然后通过tun0转发到pod [root@dt-infra1 home]# ip route default via 10.122.70.1 dev eth0 proto...kernel scope link 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 172.30.0.0/16 dev tun0...developerworks/cn/cloud/library/1401_zhaoyi_openswitch/index.html https://www.ibm.com/developerworks/cn/linux
Boot ID: ad31c8143bbc4aae8c41fb911a9c7bad Virtualization: kvm Operating System: CentOS Linux...7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-514.21.1.el7.x86...root@h208 client]# openvpn --config client.ovpn Wed Apr 11 00:10:38 2018 OpenVPN 2.4.5 x86_64-redhat-linux-gnu...[root@h208 ~]# ip route 0.0.0.0/1 via 10.8.0.5 dev tun0 10.8.0.1 via 10.8.0.5 dev tun0 10.8.0.5 dev...只添加了一条默认路由 其实这条默认路由也可以由 server 端直接推送过来 其实,这条路由朝外,就是在穿透防火墙访问外网资源 如果这条路由朝内,就是在穿透防火墙访问内网资源,这两者并无本质区别 致此,已经完成了 linux
2.1.2 LVS简介 项目简介 linux virtual server 开源项目 基于ip负载均衡和内容分发功能,将大量的空闲主机资源合理的利用起来 集群结构 调度功能...local 172.16.10.14 ttl 255 # 启动隧道 ip link set tun0 up # 设定本机tun0上的虚拟ip,并制定对端ip-192.168.2.1...ip addr add 192.168.1.1 peer 192.168.2.1 dev tun0 # 设定本机隧道tun0的路由信息 ip route add 192.168.2.0...add tun0 mode gre remote 172.16.10.14 local 172.16.20.15 ttl 255 ip link set tun0 up ip addr...add 192.168.2.1 peer 192.168.1.1 dev tun0 ip route add 192.168.1.0/24 dev tun0 操作流程: 1
Linux : ping -I -I interface interface is either an address, or an interface...PING baidu.com (123.125.115.110) from 10.210.10.160 wlp3s0: 56(84) bytes of data. ➜ Desktop ping -I tun0...baidu.com PING baidu.com (220.181.57.216) from 10.72.12.142 tun0: 56(84) bytes of data.
使用ICMP搭建隧道(Icmptunnel) 适用场景:目标机器是Linux服务器的情况 攻击机:Redhat7 192.1.68.10.20 靶机:Centos7 192.168.10.13 ICMP.../icmptunnel -s #监听 重新打开一个命令行窗口 ifconfig tun0 10.0.0.1 netmask 255.255.255.0...#添加tun0网卡,分配隧道地址10.0.0.1/24 客户端的操作: echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all.../icmptunnel 192.168.10.20 #连接服务端 重新打开一个命令行窗口 ifconfig tun0 10.0.0.2 netmask...255.255.255.0 #添加tun0网卡,分配隧道地址10.0.0.2/24 至此,客户端和服务端已经打通了一条ICMP隧道。
iptables 的 NAT 规则会作用于tun0。...docker0:Docker 管理和使用的 linux bridge 网桥,通过 veth 对将不受 OpenShift 管理的Docker 容器的网络地址空间连接到 docker0 上。...其目的是使得返回包能回到tun0,然后能通过反SNAT 操作,将目的IP地址由 tun0 的IP 修改为原来的源IP。具体见下文的分析。...对于返回的网络包,其目的地址是源pod 宿主机上的 tun0,即左图中的 10.131.0.1/23....nw_dst=10.131.0.1 actions=output:2 根据这篇文章(https://superuser.com/questions/1269859/linux-netfilter-how-does-connection-tracking-track-connections-changed-by-nat
客户端异常关闭,没有完成4次挥手 如大量可能存在攻击行为 } ssh{ ssh -p 22 user@192.168.1.209 # 从linux...ssh登录另一台linux ssh -p 22 root@192.168.1.209 CMD # 利用ssh操作远程主机 scp -P 22...root tc qdisc add dev tun0 root handle 2:0 htb tc class add dev tun0 parent 2:1 classid...qdisc add dev tun0 parent 2:10 handle 1: sfq perturb 1 tc filter add dev tun0 protocol ip parent...# 从组中删除用户 su - user -c " #cmd1; " # 切换用户执行 恢复密码{ # 即进入单用户模式: 在linux
linux下添加路由的方法 一、查看及添加临时路由 1.查看路由(linux下) [root@nfs ~]# route #同netstat -rn Kernel IP routing table...Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.90.2 * 255.255.255.255 UH 0 0 0 tun0...0 eth0 192.168.10.0 * 255.255.255.0 U 0 0 0 eth1 192.168.90.0 192.168.90.2 255.255.255.0 UG 0 0 0 tun0...192.168.0.1 ip route add 192.168.1.1 dev 192.168.0.1 删除路由 ip route del 192.168.0.0/24 via 192.168.0.1 二、在linux.../etc/sysconfig/network-script/route-eth0 在此文件添加如下格式的内容 192.168.1.0/24 via 192.168.0.1 5.查看经过的路由 linux
wg-quick up wg0 sudo systemctl enable wg-quick@wg0 如果出现有转发问题可以手动加入下方手动安装中的 PreUp = iptables -A FORWARD -i tun0...-j ACCEPT; iptables -A FORWARD -o tun0 -j ACCEPT; iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE...-o wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE 手动安装 安装wireguard并开启内核转发,其中在linux...-j ACCEPT; iptables -A FORWARD -o tun0 -j ACCEPT; iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE...莫非是遇上了自己会修bug的linux了吗
最后更新时间:2021/7/13 根据官方 wiki 中Logging traffic[1]这篇文章的说明:从 Linux 内核 3.17 开始提供完整的日志支持。...前置条件: openvpn 网卡 tun0、openvpn 用户虚拟 IP 网段为 10.121.0.0/16; wireguard 网卡 wg0、wireguard 虚拟 IP 网段 10.122.0.0...参考资料 Steve Suehring 的《Linux Firewalls_ Enhancing Security with nftables and Beyond-Addison-Wesley Professional...》这本书中对防火墙有充分的介绍,很多方面都有可借鉴之处 设置 nf_log 内核参数[2] (最终没用到) 连接跟踪(conntrack):原理、应用及 Linux 内核实现[3] 脚注 [1] Logging...t=54411#p230026 [3] 连接跟踪(conntrack):原理、应用及 Linux 内核实现: https://cloud.tencent.com/developer/article/1761367
环境要求 攻击机/C2通道:192.168.1.108(Kali Linux) 宿主机:192.168.1.106(Windows 10) icmpsh:C2通道与安装方法 icmpsh是一个简单的ICMP...以主模式运行icmpsh(Kali Linux) 下载完成之后,使用以下命令来运行主控端。执行之前最重要的一步是在你的机器上关闭ping回复。这样可以防止内核自己对ping包进行响应。...环境要求 服务端机器: ens33:192.168.1.108 tun0:10.0.0.1 客户端机器: eth0: 192.168.1.111 tun0:10.0.0.2 icmptunnel是一个将.../icmptunnel -sCtrlzbg/sbin/ifconfig tun0 10.0.0.1 netmask 255.255.255.0ifconfig ?.../icmptunnel 192.168.1.108ctrl z/sbin/ifconfig tun0 10.0.0.2 netmask 255.255.255.0 ?
如图1所示,发往tun0的数据被转发到了V**程序,而普通的eth0设备则将会将其送往这个网卡所连着的另一个设备。...首先它也归内核的网络设备子系统管理,对于Linux内核网络设备管理模块来说,虚拟设备和物理设备没有区别,都是网络设备,都能配置IP,从网络设备来的数据,都会转发给协议栈,协议栈过来的数据,也会交由网络设备发送出去...Metric Ref Use Iface 10.119.0.0 10.80.25.4 255.255.0.0 UG 0 0 0 tun0...192.168.0.1 0.0.0.0 U 0 0 0 eth0 ③:好了,到这里我们可以猜到这个请求被路由表决定该送往本机设备tun0...我们大致可以想象得出从tun0接收到数据,再次穿过IP层(以及路由表)和传输层,并最终达到浏览器的场景。 写完这篇,二哥不禁再次感慨网络模型分层设计模式的强大之处。
这是因为,flannel实际上只是调用了Linux内核的VXLAN封装功能,也就是将数据包通过tun0发送,并将tun0设定为VXLAN封装。
3 Ifconfig 介绍 我并没有想要让大家对后续的内容望而却步,特地选择了这个大家最熟悉的 Linux 命令!...无论你使用的是 mac,还是 linux,都可以使用它去 CRUD 你的网卡配置。...ssh 登陆 linux 服务器操作的用户要小心执行这个操作了,千万不要蠢哭自己。不然你下一步就需要去 google:“禁用 eth0 网卡后如何远程连接 Linux 服务器” 了。...紧接着的两个网卡 docker0,tun0 是怎么出来的呢?我在我的 ubuntu 上装了 docker 和 openV**。...5.4 openV** 实战 openV** 是 Linux 上一款开源的 V** 工具,我们通过它来复现出影响我们做网卡选择的场景。
领取专属 10元无门槛券
手把手带您无忧上云