Giter VIP home page Giter VIP logo

coly's Introduction

WARNING


This is a very old script wich probably doesn't work any more.

Introduction

Coly is a Scapy based python tool, that can form neighbourship to EIGRP routers and inject route.

Requirements

Scapy 2.2.0 and above with EIGRP module.
tcpdump, for listening and filtering EIGRP packets.

Usage Examples

Everything start with defining interface that must be used as a source. EIGRP Autonomous System number is essential to form neighborship. AS could be discover by "discover" command or manually set with "asn". "discover" is recommended step, as far as it will listen all hellos, collects all active peers and AS number automatically.

EIGRP neighbourship is formed with Hello packets sent to multicast address: 224.0.0.10 periodically. The interval by default is 5 sec. After receiving Hello packet from a new router, all active routers will add the sender to its neighbor list, send an Init Update packet and waits for ACK Update response. All these tasks are done with "hi" command.

SuSe:~/coly # ./coly.py 
EIGRP route injector, v0.1 Source: http://code.google.com/p/coly/
suse(router-config)#interface tap0
Interface set to tap0, IP: 10.0.0.1
suse(router-config)#discover
Discovering Peers and AS
Peer found: 10.0.0.3 AS: 33
AS set to 33
Peer found: 10.0.0.2 AS: 33

suse(router-config)#hi
Hello thread started
suse(router-config)#
R1#
*Mar 1 02:04:08.771: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 33: Neighbor 10.0.0.1 (FastEthernet0/0) is up: new adjacency
R1#

At this point, neighbourship is successfully formed, and we can participate into EIGRP Process.


R1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
R1#


suse(router-config)#inject 192.168.1.0/24
Sending route to 10.0.0.3
Sending route to 10.0.0.2
suse(router-config)#


R1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
D 192.168.1.0/24 [90/156160] via 10.0.0.1, 00:00:17, FastEthernet0/0
R1#


With "inject" command, EIGRP Internal Route Update packet is sent to all active peers directly. So one thing that you have to be sure is that, all the peers are correctly detected. If you define ASN statically or if it's automatically discovered, with both ways, peer IP addresses are saved and updates are sent individually. To check active EIGRP peers use "peers" command.


suse(router-config)#peers
10.0.0.3
10.0.0.2
suse(router-config)#

coly's People

Contributors

tokozedg avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.