Archive

标签为 ‘Linux’的文章

TRex Advance stateful mode Example

详细内容可以查阅:TRex Advance stateful support

在之前的文章中,介绍过Trex Stateless Mode的简单使用方法,在这里介绍下ASTF模式是如何工作的,并且如何统计信息的;另外在这个例子中,主要是通过变更PCAP报文中的原和目的地址,并以Server/Client方式发送流量并统计;

Topology

Trex-Server1 (100.0.0.1)------ (100.0.0.2)Router1 ---- network ----- Router2(100.1.1.2) ------ (100.1.1.1)Trex-Server2
完整阅读

Telemetry Receiver by UDP+KV-GPB

In the article, only show as follow (because easy to show how to work):

Protocol: UDP; Port: 5234

Encoding: KV-GPB

For more detailed information, you can reference my colleague’s GitHub, which includes more examples, e.g GRPC.

AlexFengCisco / Telemetry_Receiver

GRPC Update Info:

If use GRPC not TCP/UDP, that will have standard function, you will not need to write “DECODE_FN_MAP…”, function will auto generate, direct to use. Simple list steps:

  1. Get GRPC protobuf (e.g “mdt_grpc_dialout”) from cisco / bigmuddy-network-telemetry-proto
  2. Install/use compile tools, suggest install python virtual env, you can reference 在MacOS中部署Python虚拟开发环境
(telemetry-protocol) [root@telemetry telemetry-protocol]# python -V
Python 3.6.8
(telemetry-protocol) [root@telemetry telemetry-protocol]# easy_install pip
(telemetry-protocol) [root@telemetry telemetry-protocol]# pip install grpcio
(telemetry-protocol) [root@telemetry telemetry-protocol]# pip install protobuf
(telemetry-protocol) [root@telemetry telemetry-protocol]# pip install grpcio_tools
(telemetry-protocol) [root@telemetry telemetry-protocol]# python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. cisco_grpc_dialout.proto
(telemetry-protocol) [root@telemetry telemetry-protocol]# ls -l|grep cisco
-rw-r--r--.  1 root    root       2695 Aug 10 16:16 cisco_grpc_dialout_pb2_grpc.py   #generated
-rw-r--r--.  1 root    root       3805 Aug 10 16:16 cisco_grpc_dialout_pb2.py   #generated
-rw-r--r--.  1 root    root        485 Aug 10 16:15 cisco_grpc_dialout.proto   #proto file  
Follow all file if you need grpc protocol:
[root@telemetry grpc-dailout]# ls -l
total 36
-rw-r--r--. 1 root root  2695 Aug 10 16:16 cisco_grpc_dialout_pb2_grpc.py #Contains the server Stub class and the client Stub class, as well as the service RPC interface to be implemented.
-rw-r--r--. 1 root root  3805 Aug 10 16:16 cisco_grpc_dialout_pb2.py #message serialization classes
-rw-r--r--. 1 root root   484 Aug 10 15:36 mdt_grpc_dialout.proto 
-rw-r--r--. 1 root root  3722 Aug 10 16:11 service_grpc_dialout_no_tls.py #service python
-rw-r--r--. 1 root root 19220 Aug 10 15:58 telemetry_pb2.py  #decode gpb-kv messages, generate as below
grpc-dailout.zip

Install Protobuf of python version

完整阅读

DX6 on Linux by uSID

The Linux come from by my compiled kernel that supports uSID, please check my last blog: Compile SRv6 uSID and VPP on ubuntu 20.04

Before doing SRv6 lab, please double confirm enable the function by following cmd:

sysctl -w net.ipv6.conf.all.forwarding=1
sysctl -w net.ipv4.conf.all.forwarding=1
sysctl -w net.ipv6.conf.all.seg6_enabled=1

Check by following cmd:

root@vm1:/home/cisco# sysctl -a |grep net.ipv6.conf.all.forwarding
net.ipv6.conf.all.forwarding = 1

Above cmd will disappear after reboot, you can permanently write to “/etc/sysctl.conf”.

Btw, how to config srv6 and usid, reference follows:

SRv6 uSID Linux Iproute2

SRv6 – Linux Kernel Implementation

Topology

完整阅读

How to deploy xrv9k in vCenter if you have only qcow2 image?

At some times, we only have a qcow2 image, but ESXI(vCenter) only supports vmdk, how to do deploy? In the video guide, I will show how to convert img to vmdk from qcow2, then deploy by import exist hardware(vmdk).

Btw, xrv9k supports only 3 virtual interfaces: e1000, virtio, and VMXnet3. Please notices not support e1000e!

完整阅读

Compile SRv6 uSID and VPP on ubuntu 20.04

PS: Compile Server base on “focal-server-cloudimg-amd64.vmdk”, 20200706 update.

General Config on ubuntu

Config port by new “ip” cmd, and DNS

root@server-test:/opt# ip addr add 10.75.37.59/24 dev ens4
# config addr for one port 
root@server-test:/opt# ip addr del 172.16.1.163/24 dev ens3
# delet addr for one port
root@server-test:/opt# ip addr
# equal with ifconfig
root@server-test:/opt# ip link set ens4 up
# up one port 
root@server-test:/opt# ip -s link ls ens4
# cool cmd, check RX/TX packets, errors, dropped, overrun, mcast
root@server-test:/opt# ip route add default via 10.75.37.1 
# config default route
root@server-test:/opt# ip route
# check v4 route table
root@server-test:/opt# ip -6 route
# check v6 route table
root@server-test:/opt# echo 'nameserver 64.104.123.144' > /etc/resolv.conf

完整阅读

blonde teen swallows load.xxx videos