- 浏览: 1438809 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
试验:
1.建立个namespace 名字为test
2.简历个veth peer,一个放入test里面
3.使test里面的网络能ping到外面的veth peer
4.设置ip route使test里面的网络能ping到外面的ip
创建一个namespace
在namespace里面使用普通linux网络命令
ping
增加一对veth peer ,把veth1扔进namespace
把namespace中的veth启动起来
设置namespace里面的veth1的ip,和namespace外面的veth0的ip
查看路由表
启动外面的veth0
再次查看路由表
设置路由之后就通了
★★换另一个ssh终端
1.建立个namespace 名字为test
2.简历个veth peer,一个放入test里面
3.使test里面的网络能ping到外面的veth peer
4.设置ip route使test里面的网络能ping到外面的ip
创建一个namespace
[root@centos7 ~]# ip netns add test [root@centos7 ~]# ip netns test [root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
[root@centos7 ~]# ip netns exec test bash [root@centos7 ~]# ip a 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 [root@centos7 ~]# ip netns identify $$ test [root@centos7 ~]# exit exit
在namespace里面使用普通linux网络命令
[root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 [root@centos7 ~]# ip netns exec test ip link set dev lo up [root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever
ping
[root@centos7 ~]# ip netns exec test ping 127.0.0.1 PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.093 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.054 ms ^C --- 127.0.0.1 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1000ms rtt min/avg/max/mdev = 0.054/0.073/0.093/0.021 ms
增加一对veth peer ,把veth1扔进namespace
[root@centos7 ~]# ip link add type veth [root@centos7 ~]# [root@centos7 ~]# [root@centos7 ~]# ip link set veth1 netns test [root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 6: veth1@if5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000 link/ether ba:3f:cf:12:23:5d brd ff:ff:ff:ff:ff:ff link-netnsid 0 查看配对的veth peer [root@centos7 ~]# ethtool -S veth0 NIC statistics: peer_ifindex: 6 [root@centos7 ~]# ip netns exec test ethtool -S veth1 NIC statistics: peer_ifindex: 5
把namespace中的veth启动起来
[root@centos7 ~]# ip netns exec test ip link set veth1 up [root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 6: veth1@if5: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state LOWERLAYERDOWN qlen 1000 link/ether ba:3f:cf:12:23:5d brd ff:ff:ff:ff:ff:ff link-netnsid 0
设置namespace里面的veth1的ip,和namespace外面的veth0的ip
[root@centos7 ~]# ip netns exec test ip addr add dev veth1 192.168.3.2/29 [root@centos7 ~]# ip route default via 192.168.128.1 dev eth0 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 192.168.128.0/20 dev eth0 proto kernel scope link src 192.168.139.55 [root@centos7 ~]# ip addr add dev veth0 192.168.3.1/29 [root@centos7 ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 50:50:18:aa:80:17 brd ff:ff:ff:ff:ff:ff inet 192.168.139.55/20 brd 192.168.143.255 scope global dynamic eth0 valid_lft 2823sec preferred_lft 2823sec inet6 fe80::5250:18ff:feaa:8017/64 scope link valid_lft forever preferred_lft forever 3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN link/ether 52:54:00:71:94:cc brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 4: virbr0-nic: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 500 link/ether 52:54:00:71:94:cc brd ff:ff:ff:ff:ff:ff 5: veth0@if6: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000 link/ether be:ab:06:b0:59:fa brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 192.168.3.1/29 scope global veth0 valid_lft forever preferred_lft forever
查看路由表
[root@centos7 ~]# ip route default via 192.168.128.1 dev eth0 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 192.168.128.0/20 dev eth0 proto kernel scope link src 192.168.139.55
启动外面的veth0
[root@centos7 ~]# ip link set veth0 up [root@centos7 ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 50:50:18:aa:80:17 brd ff:ff:ff:ff:ff:ff inet 192.168.139.55/20 brd 192.168.143.255 scope global dynamic eth0 valid_lft 2788sec preferred_lft 2788sec inet6 fe80::5250:18ff:feaa:8017/64 scope link valid_lft forever preferred_lft forever 3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN link/ether 52:54:00:71:94:cc brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 4: virbr0-nic: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 500 link/ether 52:54:00:71:94:cc brd ff:ff:ff:ff:ff:ff 5: veth0@if6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether be:ab:06:b0:59:fa brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 192.168.3.1/29 scope global veth0 valid_lft forever preferred_lft forever inet6 fe80::bcab:6ff:feb0:59fa/64 scope link valid_lft forever preferred_lft forever
再次查看路由表
[root@centos7 ~]# ip route default via 192.168.128.1 dev eth0 192.168.3.0/29 dev veth0 proto kernel scope link src 192.168.3.1 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 192.168.128.0/20 dev eth0 proto kernel scope link src 192.168.139.55 [root@centos7 ~]# ip netns exec test ip route 192.168.3.0/29 dev veth1 proto kernel scope link src 192.168.3.2 [root@centos7 ~]# ping 192.168.3.2 PING 192.168.3.2 (192.168.3.2) 56(84) bytes of data. 64 bytes from 192.168.3.2: icmp_seq=1 ttl=64 time=0.091 ms 64 bytes from 192.168.3.2: icmp_seq=2 ttl=64 time=0.076 ms ^C --- 192.168.3.2 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1000ms rtt min/avg/max/mdev = 0.076/0.083/0.091/0.011 ms
设置路由之后就通了
[root@centos7 ~]# [root@centos7 ~]# [root@centos7 ~]# ping 192.168.3.2 PING 192.168.3.2 (192.168.3.2) 56(84) bytes of data. 64 bytes from 192.168.3.2: icmp_seq=1 ttl=64 time=0.117 ms 64 bytes from 192.168.3.2: icmp_seq=2 ttl=64 time=0.073 ms 64 bytes from 192.168.3.2: icmp_seq=3 ttl=64 time=0.045 ms 64 bytes from 192.168.3.2: icmp_seq=4 ttl=64 time=0.050 ms 64 bytes from 192.168.3.2: icmp_seq=5 ttl=64 time=0.057 ms ^C --- 192.168.3.2 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4000ms rtt min/avg/max/mdev = 0.045/0.068/0.117/0.027 ms [root@centos7 ~]#
★★换另一个ssh终端
[root@centos7 ~]# ip netns exec test tcpdump -i veth1 -l tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on veth1, link-type EN10MB (Ethernet), capture size 65535 bytes 08:01:59.180834 IP 192.168.3.1 > centos7: ICMP echo request, id 4142, seq 1, length 64 08:01:59.180899 IP centos7 > 192.168.3.1: ICMP echo reply, id 4142, seq 1, length 64 08:02:00.181087 IP 192.168.3.1 > centos7: ICMP echo request, id 4142, seq 2, length 64 ^C 10 packets captured 10 packets received by filter 0 packets dropped by kernel
[root@centos7 ~]# [root@centos7 ~]# [root@centos7 ~]# ip netns exec test ping 192.168.139.55 connect: Network is unreachable [root@centos7 ~]# ip netns exec test ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 6: veth1@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether ba:3f:cf:12:23:5d brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 192.168.3.2/29 scope global veth1 valid_lft forever preferred_lft forever inet6 fe80::b83f:cfff:fe12:235d/64 scope link valid_lft forever preferred_lft forever
[root@centos7 ~]# ip netns exec test ip route 192.168.3.0/29 dev veth1 proto kernel scope link src 192.168.3.2 [root@centos7 ~]# ip netns exec test ip route add default via 192.168.3.1 [root@centos7 ~]# [root@centos7 ~]# ip netns exec test ping 192.168.139.55 PING 192.168.139.55 (192.168.139.55) 56(84) bytes of data. 64 bytes from 192.168.139.55: icmp_seq=1 ttl=64 time=0.074 ms ^C --- 192.168.139.55 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.074/0.074/0.074/0.000 ms [root@centos7 ~]#
发表评论
-
xl2tp 备份
2019-09-24 16:25 5642019年9月24日更新: 注意,需要开启firewall ... -
sdl笔记
2019-01-31 17:19 676sdl教程教程 https://github.com/Twin ... -
tinyemu
2019-01-24 17:59 1387参考https://bellard.org/jslinux/t ... -
建立tap设备的c的代码
2019-01-08 19:09 431tapper.c #include <stdio.h& ... -
br0和tap0的互相影响
2019-01-02 19:17 767转载 http://www.cnblogs.com/wlei/ ... -
aws搭建xl2tp给iphone使用
2018-12-26 21:37 18002019年12月26日 可以参考原来的配置 https:// ... -
consul的基本使用
2017-06-27 11:13 1343### 安装 [centos7上consul的安装](ht ... -
lvs的helloworld
2017-06-13 20:36 552###################lvs######### ... -
M版openstack(ovs,dvr,动态迁移)
2017-06-09 10:30 1704主要内容 1.先搭建三个节点的环境,dvr模式 2.建一个vm ... -
M版本的openstack的例子(linuxbridge)
2017-05-23 15:05 522做两个节点控制节点和计算节点 mcontroller521 ... -
系统调用的helloworld
2017-05-04 16:14 554《2.6内核标准教程》 p293 #include < ... -
bitcoin和cgminer的安装
2017-04-05 22:45 1914参考 http://blog.csdn.net/rion_ch ... -
ceph安装和常用命令
2017-03-21 21:55 904/etc/hosts ssh-keygen ssh-copy- ... -
mobile terminal 笔记
2016-12-02 15:35 539找出旧的iphone4 越狱之后可以变个小操作系统 mobi ... -
vxlan多台主机的vm之间不同网段互通
2016-09-19 21:06 4208组播: 试验: 在三台机器上 192.168.139.251 ... -
vxlan多台主机的vm之间相同网段互通
2016-09-19 16:30 2193三台机器 建立namespace ... -
qemu用tap方式启动vm的网络试验(ip route)
2016-09-14 11:29 2664ip route add 192.168.8.0/24 via ... -
openstack的M版本的neutron的实验
2016-09-01 20:00 3044试验步骤: 1.创建内部 ... -
socket基础和select(python)
2016-06-14 17:21 1750上接 c语言的socket基础ht ... -
socket基础(c语言)
2016-06-14 16:45 928不使用select 普通的基础socket连接,对多个客户端的 ...
相关推荐
neutron-fwaas 是 OpenStack Neutron 的防火墙服务。这个包包括了 Neutron 防火墙服务(FWaaS)的源代码,例如第三方驱动。这个库需要 Neutron 运行。 标签:neutron
openstack-Neutron深入理解.pdf
OpenStack Neutron 原理详解
主要讲述Neutron网络的一些基本概念,网络规划和Horizon中如何使用Neutron中的网络功能.
本书是一本介绍 OpenStack网络的专著,本书将会从传统的网络技术开始,让读者在大脑中建立传统网络与 Neutron...本书适合 OpenStack爱好者和有一定基础的技术工程师以及想要深入理解 OpenStack Neutron的架构师使用。
讲解Neutron概况。介绍了Linux的虚拟网络知识。讲述了Neutron的实现模型。讲述的Neutron的资源模型。讲述了Neutron的基本架构,以及架构中所涉及的Web机制、通信机制、并发机制等。
Neutron 网络基础 说明 本书记录了笔者在工作及日常学习中的一些学习笔记以及经验。这是一本关于Neutron的基础书籍,或许其最终的篇幅会的很长,但还是希望大家把他当成一本基础书籍来翻阅。下面是本书在编写时候的...
OpenStack-Neutron原理详解.pdf
Title: Learning OpenStack Networking (Neutron) Author: James Denton Length: 300 pages Edition: 1 Language: English Publisher: Packt Publishing Publication Date: 2014-10-13 ISBN-10: 1783983302 ISBN-13:...
深入理解OpenStack Neutron 本资料共包含以下附件: 深入理解 Neutron -- OpenStack 网络实现openstack_understand_neutron.rar
openstack neutron网络模块代码分析,代码调用执行流程分析、使用技术说明
Neutron
openstack kilo版本与H3C VCF对接中,当插件安装完成后service neutron-server restart无法重启neutron服务,使用此脚本冲洗,重启命令/etc/init.d/neutron-w start
OpenStack Neutron SDN 实现详解
单节点openstack-neutron搭建
openstack Neutron 简析
Neutron 网络架构讲解_VLAN 网络
Neutron 是 Openstack 的虚拟网络服务。 标签:Neutron
65-Neutron 功能概述1
openstack网络,neutron初探,初步了解openstack的网络。