Category Archives: Cisco

IP Multicast Routing

Unter IP Multicasting versteht man die Technik Daten, z.B. Video, an mehrer Teilnehmer zu verteilen.

IP Multicasting gibt es unter IPv4 und IPv6.

Einen Schnellen einstieg in die Configuration auf Cisco Routern bietet follgender Quick Start Guide. Weiterführend kann ich euch das Buch “Routing TCP/IP Volume II” empfehlen oder Cisco IOS IP Multicast Configuration Guide, Release 12.4.

Als Multicast Sender und Empfänger kann man VLC nehmen.

Wir haben mit zwei 1700er Routern eine einfache Multicast Configuration auf gesetzt.

VideoLAN

Es gibt zwei Möglichkeiten VLC als Streaming Server einzusetzen, die erste Möglichkeit ist die Einrichtung über die Wizards, diese sind selbst erklärend,

deshalb werde ich hier auf eine Beschreibung verzichten.

Streaming Server

Der vlc player kann auch über die CLI gesteuert werden.

Hier ein einfaches Beispiel zum Starten eines Multicast Streams:

vlc -vvv input.mpeg --sout udp:239.0.0.42 --ttl 12

Der Output der Logmeldungen mit “-v” eingrenzen.

Client

vlc udp:@239.0.0.42

Multicast HOWTO

Cisco Router Basic Multicast Configuration

--- snip ---
!
ip multicast-routing
!
! Startet das Multicast Routing
!
interface FastEthernet 0/0
  ip pim sparse-dense-mode
!
interface FastEthernet 0/1
  ip pim sparse-dense-mode
!
--- snip ---

Commands

show ip mroute

IP Multicast Routing

Unter IP Multicasting versteht man die Technik Daten, z.B. Video, an mehrer Teilnehmer zu verteilen.

IP Multicasting gibt es unter IPv4 und IPv6.

Einen Schnellen einstieg in die Configuration auf Cisco Routern bietet follgender Quick Start Guide. Weiterführend kann ich euch das Buch “Routing TCP/IP Volume II” empfehlen oder Cisco IOS IP Multicast Configuration Guide, Release 12.4.

Als Multicast Sender und Empfänger kann man VLC nehmen.

Wir haben mit zwei 1700er Routern eine einfache Multicast Configuration auf gesetzt.

VideoLAN

Es gibt zwei Möglichkeiten VLC als Streaming Server einzusetzen, die erste Möglichkeit ist die Einrichtung über die Wizards, diese sind selbst erklärend,

deshalb werde ich hier auf eine Beschreibung verzichten.

Streaming Server

Der vlc player kann auch über die CLI gesteuert werden.

Hier ein einfaches Beispiel zum Starten eines Multicast Streams:

vlc -vvv input.mpeg --sout udp:239.0.0.42 --ttl 12

Der Output der Logmeldungen mit “-v” eingrenzen.

Client

vlc udp:@239.0.0.42

Multicast HOWTO

Cisco Router Basic Multicast Configuration

--- snip ---
!
ip multicast-routing
!
! Startet das Multicast Routing
!
interface FastEthernet 0/0
  ip pim sparse-dense-mode
!
interface FastEthernet 0/1
  ip pim sparse-dense-mode
!
--- snip ---

Commands

show ip mroute

Mail nur über den 2en Internet Service Provider

Um mit den Cisco Routen Mail nur über einen Provider zu versenden, muss eine Policy Route erstellt werden die den Verkehr erstellt werden.

--- snip ---
ip access-list extended SERVER-RT-MAP-ACL
  10 permit tcp host 192.168.20.1 any eq smtp
!
route-map SERVER-RT-MAP permit 10
  match ip address SERVER-RT-MAP-ACL
  set interface Dialer1
!
interface FastEthernet 0
  ip policy route-map SERVER-RT-MAP 
--- snip ---

VDSL

Das Thema Cisco Router mit einem von den neuen VDSL Anschlüssen ans rennen
zu bekommen ist nicht weiter schwierig.

Hier ein paar Beispiele:

Bei Routern die nur einen eingebauten Switch besitzen, z.B. Cisco 876:

[sourcecode]
!— snip —
vlan 7
name VDSL-VLAN
!
interface FastEthernet 8
switchport mode trunk
switchport trunk allowed vlan 1,7,1002-1005
!
interface Vlan 7
description VLAN fuer VDSL
no ip address
pppoe enable group global
pppoe-client dial-pool-number 1
!
interface Dialer 0
ip address negotiated
ip mtu 1452
ip nat outside
ip virtual-reassembly
encapsulation ppp
ip route-cache policy
ip route-cache flow
dialer pool 1
dialer idle-timeout 0
dialer persistent
dialer-group 1
ppp authentication chap pap callin
ppp pap sent-username <user>@t-online.de password 0 <password>
!
!— snip —
[/sourcecode]

Bei anderen Modellen kann man auch eines der Routing interface nehmen.
[sourcecode]
!— snip —
interface FastEthernet 0.7
encapsulation dot1q 7
pppoe enable group global
pppoe-client dial-pool-number 1
!
interface Dialer 0
ip address negotiated
ip mtu 1452
ip nat outside
ip virtual-reassembly
encapsulation ppp
ip route-cache policy
ip route-cache flow
dialer pool 1
dialer idle-timeout 0
dialer persistent
dialer-group 1
ppp authentication chap pap callin
ppp pap sent-username <user>@t-online.de password 0 <password>
!
!— snip —
[/sourcecode]

Mail nur über den 2en Internet Service Provider

Um mit den Cisco Routen Mail nur über einen Provider zu versenden, muss eine Policy Route erstellt werden die den Verkehr erstellt werden.
[sourcecode]
!— snip —
ip access-list extended SERVER-RT-MAP-ACL
10 permit tcp host 192.168.20.1 any eq smtp
!
route-map SERVER-RT-MAP permit 10
match ip address SERVER-RT-MAP-ACL
set interface Dialer1
!
interface FastEthernet 0
ip policy route-map SERVER-RT-MAP
!— snip —
[/sourcecode]

NAT mit zwei Internet Providern

Eine subere Verbindung ins Internet mit Zwei Providern zu bekommen ist nicht so einfach mit folgender Configuration zu lösen.

Nicht funtionierende Lösung

[sourcecode]
!— snip —
interface FastEthernet 0
description LAN
ip address 192.168.20.1 255.255.255.0
ip nat inside
!
interface Dialer 1
description Provider 1
ip nat outside
!
interface Dialer 2
description Provider 2
ip nat outside
!
access-list 1 permit 192.168.20.0 0.0.0.255
access-list 2 permit 192.168.20.0 0.0.0.255
!
ip nat inside source list 1 interface Dialer 1 overload
ip nat inside source list 2 interface Dialer 2 overload
!
ip route 0.0.0.0 0.0.0.0 Dialer 1
ip route 0.0.0.0 0.0.0.0 Dialer 2
!— snip —
[/sourcecode]

Hier bei kommt es dann zu lustigen Effekten mit den Source Addressen.
Bzw. durch Packet basiertes Load Balancing kann es sein das nichts Funktioniert oder man im besten Fall nur den Upload verbessert hat.

Die von uns geforterte Configuration benötigte noch das Goodie das ausgehende E-Mails nur über den zweiten Provider zu versenden sind. Da hinter dem Router ein Mail Server mit eigener Domain betrieben wird.
Dazu aber in einem anderen Posting mehr.

Die Lösung könnte folgendermaßen aussehen:

[sourcecode]
!— snip —
interface FastEthernet 0
description LAN
ip address 192.168.20.1 255.255.255.0
ip nat inside
!
interface Dialer 1
description Provider 1
ip nat outside
!
interface Dialer 2
description Provider 2
ip nat outside
!
access-list 1 permit 192.168.20.0 0.0.0.255
!
! Die ACL definiert den Verkehr der durch den NAT Process geschickt wird.
!
route−map dialer1−nat permit 10
match ip address 1
match interface Dialer1
!
route−map dialer2−nat permit 10
match ip address 1
match interface Dialer 2
!
! Die Route-Maps binden die NAT Acl an das ISP Seitige Interface des Routers.
!
ip nat inside source route−map dialer1−nat interface Dialer1 overload
ip nat inside source route−map dialer2−nat interface Dialer2 overload
!
!
!
ip route 0.0.0.0 0.0.0.0 Dialer 1
ip route 0.0.0.0 0.0.0.0 Dialer 2
!
!— snip —
[/sourcecode]

Überprüfung

[sourcecode]
show ip nat translation
! Zeigt die aktuellen NAT Sessions an.
!
show ip route
! Zeigt die Aktiven Routen an.
[/sourcecode]

Weiter gehende Informationen findet ihr unter folgendem Link:
Cisco IOS NAT Load-Balancing and Zone-Based Policy Firewall with Optimized Edge Routing For Two Internet Connections

Serial Console unter Debian

http://www.howtoforge.com/setting_up_a_serial_console

Edit: /boot/grub/menu.lst

--- snip ---
# password topsecret
serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console
--- snip ---
--- snip ---
title           Ubuntu 8.10, kernel 2.6.27-7-server
uuid            b25570ad-6302-4637-a897-d7a4cebf4a7f
kernel          /boot/vmlinuz-2.6.27-7-server root=UUID=b25570ad-6302-4637-a897-d7a4cebf4a7f ro quiet splash console=tty0 console=ttyS0,34800n8
initrd          /boot/initrd.img-2.6.27-7-server
--- snip ---

Edit: /etc/event.d/ttyS0

--- snip ---
# ttyS0 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.

start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6

respawn
exec /sbin/getty -L ttyS0 38400 vt100
--- snip ----

Damit hätten wir dann eine Serielle Console auf der WAVE:-)

WAVE-274#virtual-blade 1 session
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Boot from (hd0,0) ext3   b25570ad-6302-4637-a897-d7a4cebf4a7f
Starting up ...
Loading, please wait...
Couldnt get a file descriptor referring to the console
19+0 records in
19+0 records out
kinit: name_to_dev_t(/dev/sda5) = dev(8,5)
kinit: trying to resume from /dev/sda5

--- output omited ---

Ubuntu 8.10 ubuntu ttyS0

ubuntu login: admin
Password:
Last login: Mon Dec  8 13:34:36 CET 2008 on ttyS0
Linux ubuntu 2.6.27-7-server #1 SMP Fri Oct 24 07:37:55 UTC 2008 i686

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/

System information as of Mon Dec  8 13:40:01 CET 2008

System load: 0.02             Memory usage: 5%   Processes:       46
Usage of /:  5.8% of 9.38GB   Swap usage:   0%   Users logged in: 0

Graph this data and manage this system at https://landscape.canonical.com/

admin@ubuntu:~$

So dann nur noch ein Backup und dann go baby go.

admin@ubuntu:~$ sudo su -
root@ubuntu:~# halt

Broadcast message from admin@ubuntu
      (/dev/ttyS0) at 13:43 ...

The system is going  * Saving the system clock
* Stopping firewall: ufw...                                             [ OK ]
* Asking all remaining processes to terminate...                        [ OK ]
* All processes ended within 2 seconds....                              [ OK ]
* Deconfiguring network interfaces...                                   [ OK ]
* Deactivating swap...                                                  [ OK ]
* Unmounting local filesystems...                                       [ OK ]
* Will now halt
halt: Unable to iterate IDE devices: No such file or directory
[  522.482593] Power down.
Connection closed by foreign host.
WAVE-274#copy virtual-blade 1 disk 1 ftp 192.168.200.5 / WAVE-274-LX.vb
Enter username for remote ftp server: ftp
Enter password for remote ftp server:

2460112690 bytes total
WAVE-274#

Backup und Recovery der WAVE Virtual Blades

WAVE-274#sh virtual-blade 1
virtual-blade 1
config:
device cpu qemu32
device nic rtl8139
device disk IDE
memory 512
disk 10
no boot fd-image
boot cd-image disk /local1/vbs/lxserver.iso
boot from disk
interface 1 bridge GigabitEthernet 1/0 mac-address 00:16:3E:FF:FF:FF
no autostart
state:
stopped

Backup

WAVE-274#copy virtual-blade 1 disk 1 ftp 192.168.200.5 / WAVE-274-LX.vb
Enter username for remote ftp server: ftp
Enter password for remote ftp server:
2460112570 bytes total
WAVE-274#

Recovery

WAVE-274#copy ftp virtual-blade 1 disk 1 192.168.200.5 / WAVE-274-LX.vb
This will delete the existing disk image.

Are you sure you want to proceed? [no]:yes
Enter username for remote ftp server: ftp
Enter password for remote ftp server:
Downloading 10GiB disk image
6314905600 bytes total

IOS Tastatur Hints

IOS Tastatur Hints

Ctrl+B or Left Move the cursor one character to the left
Ctrl+F or Right Move the cursor one character to the right
Esc, B Move the cursor one word to the left
Esc, F Move the cursor one word to the right
Ctrl+A Move cursor to the beginning of the line
Ctrl+E Move cursor to the end of the line
Ctrl+P or Up Retrieve last command from history
Ctrl+N or Down Retrieve next command from history
Ctrl+T Swap the current character with the one before it
Ctrl+W Erase one word
Ctrl+U Erase the entire line
Ctrl+L Reprint the line
Ctrl+C Exit configuration mode
Ctrl+Z Apply the current command and exit configuration mode