theClimber

To content | To menu | To search

Wednesday, June 17 2009

Trics & Tips : configurer son client ssh

Flash_by_allanced.jpg

Quand vous êtes un utilisateur fréquent de machines distantes, il arrive que ça soit pratique d'optimiser un peu votre client ssh pour ne pas toujours devoir tapper une ligne de commande hyper longue, juste pour se connecter à un serveur. Si vous utilisez votre client ssh comme le commun des mortels, voici la ligne de commande que vous utilisez d'habitude :

login@hote:~> ssh login@server.domain.extension
Password:
login@server:~>

Et je vous propose d'obtenir après quelques manips :

login@hote:~> ssh server
login@server:~>

Ce qui est déjà nettement plus court, admettez-le ;)

Continue reading...

Sunday, February 15 2009

Installer NS-2 sur Mac OS X

NS-2 (Network Simulator) est un environnement de simulation réseau très réputé et très utilisé dans le monde de la recherche. Ici j'explique en quelques mots comment recompiler et mettre en place NS-2 sur un ordinateur Mac-Intel tournant sous Mac OS X. J'explique comment recompiler la dernière version de NS-2.

Une version de NS-2 est disponible dans les dépôts de MacPort (anciennement appelé DarwinPort), cependant c'est une ancienne version est la compilation n'est pas spécialement évidente. En effet, moi j'ai eu des erreurs de compilation et je n'ai pas pu l'installer via cette méthode ci.

Cependant, si vous ne souhaitez pas nécessairement utiliser la dernière version en date de NS-2 il existe une version pré-compilée de NS-2 disponible sur le wiki officiel (Version dmg disponible ici).

Continue reading...

Tuesday, December 9 2008

Python shell : extract the local IP from interface

This is a small python script which can be used to extract the local IP address of a host in function of his interface. You can modify this script to adapt it to your purposes. ;)

GiddyUp_and_Bickham_Script_by_vladstudio.jpg

#!/usr/bin/python
# Shell script scripts to read ip address
# -------------------------------------------------------------------------
# Copyright (c) 2008 Greg theClimber <http://www.theclimber.be/>
# This script is licensed under GNU GPL version 3.0
# -------------------------------------------------------------------------
from commands import *
import getopt
import sys

def usage():
	print "Usage : python getip.py [(-i | --interface) name]"

try:
	opts, args = getopt.getopt(sys.argv[1:], "hi:", ["help", "interface="])
except getopt.GetoptError, err:
	# print help information and exit:
	print str(err) # will print something like "option -a not recognized"
	usage()
	sys.exit(2)
intf = None
for o, a in opts:
	if o in ("-h", "--help"):
		usage()
		sys.exit()
	elif o in ("-i", "--interface"):
		intf = a
	else:
		assert False, "unhandled option"

os=getoutput('uname')
ifs=getoutput('ifconfig | grep "Ethernet" | grep -v "vnet" | cut --delimiter=L -f1').splitlines()
interfaces=[]

linux="ifconfig %s | grep 'inet '| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'"
freebsd="ifconfig %s | grep -E 'inet.[0-9]' | grep -v '127.0.0.1' | awk '{ print $2}'"
sunos="ifconfig -a %s | grep inet | grep -v '127.0.0.1' | awk '{ print $2}'"

if not intf:
	print "Please select the interface to use :"
	for n, i in enumerate(ifs):
		i = i.rstrip(' ')
		interfaces.append(i)
		print "%s) %s" % (n, i)
	print "default = 0"
	try:
		num = input()
		num = int(num)
		i = interfaces[num]
	except: num=0
else:
	i = intf

if i:
	if os == 'Linux':
		ip = getoutput(linux % i)
	elif os =='FreeBSD':
		ip = getoutput(freebsd % i)
	elif os == 'SunOS':
		ip = getoutput(sunos % i)
	else:
		ip = "Unknown"
#	print "%r:%r" % (i, ip)

print ip