Thank you to gabanz (LinkedIn Profile)from CloudFlare to have developped : https://github.com/gabanz/cf-looking-glass
Simple and efficient, two traceroutes from sin02(singapore) and nrt01 (?) :

Thank you to gabanz (LinkedIn Profile)from CloudFlare to have developped : https://github.com/gabanz/cf-looking-glass
Simple and efficient, two traceroutes from sin02(singapore) and nrt01 (?) :
For now I will not move from this blog motor, but I have tested bashblog because I have made some search of my really old blog post and it make me think about nanoblogger which is not ever maintained now. So I search only for curiosity if there is now this kind of project. Bashblog is this kind of work. Only some bash and a quick result.
It is simple, just configure EDITOR variable and let’s go :
clucas@eris:~/public_html/blog-test$ ./bb.sh list
1 Bashblog tests November 13, 2021
2 First post to test bashlog November 13, 2021
clucas@eris:~/public_html/blog-test$
To create a new blog post :
clucas@eris:~/public_html/blog-test$ ./bb.sh post
Really simple 🙂
You could check it here : http://eris.clucas.fr/~clucas/blog-test/
It make me think about my original post, when m blog posts was written with only “vi” in static HTML. It was in 2005…
Hey,
For (perhaps) futur projet I read different documentations around Bird, FRR Routing, … and I am really happy to see in FRR Routing v8.0 the new ‘pathd‘ daemon, which implement SR (Segment Routing). It is really cool to see this.
There is others new feature which have been implemented in this release and are major IMHO.
It is really great work !!!
More information there : https://frrouting.org/release/8.0/
See you soon 🙂
diff -urpN bwping/bwping.c bwping-patched/bwping.c --- bwping/bwping.c 2012-10-11 19:23:17.000000000 +0200 +++ bwping-patched/bwping.c 2017-04-20 09:06:23.449540033 +0200 @@ -26,6 +26,7 @@ #include #include #include +#include #ifdef __CYGWIN__ #include "cygwin.h" @@ -224,21 +225,39 @@ static int recv_ping (int sock, int iden return 0; } } +unsigned int transmitted_number, received_number; +unsigned long int received_volume; +struct timeval begin, end; + +void sig_handler(int signo) +{ + if (signo == SIGUSR1) { + printf("Total: pkts sent/rcvd: %u/%u, volume rcvd: %lu bytes, time: %d sec, speed: %lu kbps, rtt min/max/average: %llu/%llu/%llu ms\n", + transmitted_number, received_number, received_volume, (int)(end.tv_sec - begin.tv_sec), + end.tv_sec - begin.tv_sec?((received_volume / (end.tv_sec - begin.tv_sec)) * 8) / 1000:(received_volume * 8) / 1000, + min_rtt==DEF_MIN_RTT?0:min_rtt, max_rtt, average_rtt); + exit(255); + } +} int main (int argc, char **argv) { int sock, exitval, ch, ident, finish, pktburst, i, n; - unsigned int bufsize, tos, transmitted_number, received_number; - unsigned long int kbps, pktsize, volume, rperiod, received_volume; + unsigned int bufsize, tos; + unsigned long int kbps, pktsize, volume, rperiod; unsigned long long int min_interval, interval, current_interval, integral_error; char *ep, *bind_addr, *target; fd_set fds; struct sockaddr_in bind_to, to; struct hostent *hp; - struct timeval begin, end, report, start, now, seltimeout; + struct timeval report, start, now, seltimeout; sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); + if (signal(SIGUSR1, sig_handler) == SIG_ERR) + printf("\ncan't catch SIGUSR1\n"); + + if (sock==-1) { perror("bwping: socket(AF_INET, SOCK_RAW, IPPROTO_ICMP) failed");
Download : patch-bwping-sig.diff
For those of you whom are using this excellent opensource diagram software, since OS X Yosemite it seems it lacks one line to work correctly.
You must edit : ‘/Applications/Dia.app/Contents/Ressources/bin/dia’ and add at line 39 : “export DISPLAY=:O” such as :
[…]
fi
fi
export DISPLAY=:0
osascript -e ‘tell app “XQuartz” to launch’
for i in `seq 1 30`; do
[…]
Now it must work correctly 🙂
For those of you who know the excellent web-iou, you will not be surprised that this new project from Andrea is really exciting and amazing.
Please see all the platform you can simulate with :
The project is under heavy developpment. Thank you Andrea for your work 🙂
It may possible you are face off the problem to synchronize some other items in your GUI when you delete a row in your jqgrid.
You can use this tip to do it :
var myDelOptions = { onclickSubmit: function(options, rowid) { var grid_id = $.jgrid.jqID($( "#tip" )[0].id), grid_p = $( "#tip" )[0].p, newPage = grid_p.page; // reset the value of processing option which could be modified options.processing = true; // delete the row $( "#tip" ).delRowData(rowid); $.ajax({ url: 'backend/ip.php', type: 'POST', data : 'oper=del&id=' + rowid, dataType: "text", success: function(data, status, xr) { $( "#troute" ).trigger("reloadGrid"); $( "#tip" ).trigger("reloadGrid"); }, error: function(e) { //called when there is an error //console.log(e.message); } }); $.jgrid.hideModal("#delmod"+grid_id, {gb:"#gbox_"+grid_id, jqm:options.jqModal,onClose:options.onClose}); if (grid_p.lastpage > 1) {// on the multipage grid reload the grid if (grid_p.reccount === 0 && newPage === grid_p.lastpage) { // if after deliting there are no rows on the current page // which is the last page of the grid newPage--; // go to the previous page } // reload grid to make the row from the next page visable. $( "#tip" ).trigger("reloadGrid", [{page:newPage}]); } return true; }, processing:true }; // fin variable $("#tip").jqGrid({ url: "backend/ip.php", datatype: "xml", mtype: "GET", colNames: [" ", "Prefix", "Longueur", "Device"], colModel: [ { name: 'myac', width:80, fixed:true, sortable:false, resize:false, formatter:'actions', formatoptions:{editbutton: false, onedit:null, delbutton:true, delOptions: myDelOptions}}, { name: "prefix", width: 125, align: "center" }, { name: "longueur", width: 100, align: "center" }, { name: "device", width: 75, align: "center" } ], [...] caption: "Affectation IP / Intf" }); [...]
The great thing is that you are able to make some data / gui treatment. Here I make a data update by means of a jquery ajax call and update jqgrids by means of two trigger(“reloadGrid”) calls.
Hope this can help
Dear readers,
If this can help, please find enclosed a Debian package for the network tool bwping : bwping_1.7-1_i386.deb
Have fun 🙂
For those of you which perform some Aurora Tango tests (BERT, RFC 2544) you may know that a couple of these testers are really expensive ! The principle of these test is to place a tester in loopback and another is test mode. By means of this, you are able to qualify an Ethernet link (direct, Q-in-Q, VPLS, Xconnect).
During my readings of mailing-lists such as cisco-nsp or others, someone posts an URL to a really awesome Linux program : etherate. With modern CPU platform you are able to supply a throughput until 1G, and this program give you the possibility to test your L2 circuits.
You can do some tests by using it such as :
root@Loop_Host# etherate -r
And :
root@Tx_Host# etherate
To give some features :
root@pluton:~/COMPILE/Etherate-master# ./etherate -h Usage info; [Mode] [Destination] [Source] [Options] [Other] [Mode] By default run in transmit mode, not receive -r Change to receive (listening) mode. [Destination] -d Without this we default to 00:00:5E:00:00:02 as the TX host and :01 as the RX host. Specify a custom desctination MAC address, -d 11:22:33:44:55:66 [Source] Specify a custom source MAC address, -s 11:22:33:44:55:66 -i Set interface by name. Without this option we guess which interface to use. -I Set interface by index. Without this option we guess which interface to use. -l List interface indexes (then quit) for use with -i option. -s Without this we default to 00:00:5E:00:00:01 as the TX host and :02 as the RX host. [Options] -a Ack mode, have the receiver ack each frame during the test (This will significantly reduce the speed of the test). -b Number of bytes to send, default is 0, default behaviour is to wait for duration. Only one of -t, -c or -b can be used, both override -t, -b overrides -c. -c Number of frames to send, default is 0, default behaviour is to wait for duration. -e Set a custom ethertype value the default is 0x0800 (IPv4). -f Frame payload size in bytes, default is 1500 (1514 bytes is the expected size on the wire with headers). -m Max bytes per/second to send, -m 125000 (1Mbps). -t Transmition duration, integer in seconds, default is 30. [Other] -v Add an 802.1q VLAN tag. By default none is in the header. If using a PCP value with -p a default VLAN of 0 is added. -p Add an 802.1p PCP value from 1 to 7 using options -p 1 to -p 7. If more than one value is given, the highest is used. Default is 0 if none specified. (If no 802.1q tag is set the VLAN 0 will be used). -q Add an outter Q-in-Q tag. If used without -v, 1 is used for the inner VLAN ID. #NOT IMPLEMENTED YET# -o Add an 802.1p PCP value to the outer Q-in-Q VLAN tag. If no PCP value is specified and a Q-in-Q VLAN ID is, 0 will be used. If no outer Q-in-Q VLAN ID is supplied this option is ignored. -o 1 to -o 7 like the -p option above. #NOT IMPLEMENTED YET# -x Display examples. #NOT IMPLEMENTED YET# -V|--version Display version -h|--help Display this help text root@pluton:~/COMPILE/Etherate-master#
I really hope and try to help so that this project goes to his end. It could be really great to have L2 tests as this one as we have with bwping and iperf on L3/L4 layer of OSI model.
It is been a while I check forums and Ubiquiti products. They are really good products. At the beginning the really interesting thing in ubiquiti was the Open minded / Open Source direction they used. I begun to use their product with SR and XR card (when they don’t seek any final products). It was really easy to make your own product firmware with an embedded MIPS motherboard and their cards. The SDK was available at this time.
I check recently and now it is not. Ubiquiti has been introduce in Wall Street. I am really disappointed because when I was interviewed by them for their papers to be introduce to Wall Street I insisted on the fact of they success OpenSource is one main of it.
I would want to make some patch on kernel to be able to pass PPP/IP DSCP to their Atheros card to be able to do the same thing with IP (http://wiki.ubnt.com/AirMax_-_QoS_DSCP/TOS_Mappings). Now SDK is not available and I am really disappointed.