Difference between revisions of "16471 Grundlæggende programmering"
From Teknologisk videncenter
m |
m |
||
| (11 intermediate revisions by the same user not shown) | |||
| Line 3: | Line 3: | ||
#Kurset følger i første del video læringsmaterialet via [https://learning.oreilly.com/videos/introduction-to-python/9780135707333 denne link til Oreilly] | #Kurset følger i første del video læringsmaterialet via [https://learning.oreilly.com/videos/introduction-to-python/9780135707333 denne link til Oreilly] | ||
#Materiale til øvelser i videomateriale via denne [https://github.com/ariannedee/intro-to-python-livelessons link til Github] | #Materiale til øvelser i videomateriale via denne [https://github.com/ariannedee/intro-to-python-livelessons link til Github] | ||
| + | |||
| + | =Overhøring= | ||
| + | ==Onsdag== | ||
| + | *13:00 - Brian | ||
| + | *13:15 - Mads | ||
| + | *13:30 - Michael | ||
| + | *13:45 - Esben | ||
| + | ==Torsdag== | ||
| + | *08:00 - Karsten | ||
| + | =Primtal opgave svar= | ||
| + | *[[Media:Prime.zip|Prime.zip]] | ||
| + | |||
| + | =Python and networking= | ||
| + | ==Materials== | ||
| + | *[https://learning.oreilly.com/videos/python-network-programming/9781838551957 Python Network Programming for Network Engineers (Python 3)] (Oreilly Video based) | ||
| + | ** GNS3 see - Chapter 1 - part 2 to 6 | ||
| + | *** Link to: [https://mars.merhot.dk/data/sw/ios/c7200-adventerprisek9-mz.124-24_unZ.BIN Cisco 7200 IOS] | ||
| + | **Chapter 3 - Telnet | ||
| + | **Chapter 4 - SSH | ||
| + | **Chapter 5 - NAPALM - Mutivendor automation API | ||
| + | |||
| + | ==Telnet== | ||
| + | To use this module, you need to be able to telnet to one or more Cisco devices. | ||
| + | |||
| + | Example of basic setup for Telnet and SSH | ||
| + | |||
| + | <source lang=cli> | ||
| + | hostname R1 | ||
| + | ! | ||
| + | username cisco password 0 cisco | ||
| + | ! | ||
| + | ip domain-name merhot.dk | ||
| + | ! | ||
| + | crypto key generate rsa general-keys modulus 1024 | ||
| + | ! | ||
| + | aaa new-model | ||
| + | aaa authentication login default local | ||
| + | aaa authentication login CONSOLE none | ||
| + | aaa authorization exec default local | ||
| + | aaa session-id common | ||
| + | ! | ||
| + | enable secret cisco | ||
| + | ! | ||
| + | interface Loopback0 | ||
| + | ip address 1.1.1.1 255.255.255.255 | ||
| + | ! | ||
| + | ip ssh time-out 60 | ||
| + | ip ssh authentication-retries 2 | ||
| + | ip ssh source-interface Loopback0 | ||
| + | ip ssh logging events | ||
| + | ! | ||
| + | line vty 0 15 | ||
| + | transport input ssh telnet | ||
| + | ! | ||
| + | line con 0 | ||
| + | login authentication CONSOLE | ||
| + | </source> | ||
| + | Python 3 telnet example | ||
| + | <source lang=python> | ||
| + | import getpass | ||
| + | import sys | ||
| + | import telnetlib | ||
| + | host = "192.168.239.129" | ||
| + | user = input("Username: ") | ||
| + | password = input("Password: ") | ||
| + | |||
| + | tn = telnetlib.Telnet(host) | ||
| + | tn.read_until(b"Username: ") | ||
| + | tn.write(user.encode('ascii') + b"\n") | ||
| + | if password: | ||
| + | tn.read_until(b"Password: ") | ||
| + | tn.write(password.encode('ascii') + b"\n") | ||
| + | |||
| + | tn.write(b"enable\n") | ||
| + | tn.write(b"cisco\n") | ||
| + | tn.write(b"conf t\n") | ||
| + | tn.write(b"int loop 10\n") | ||
| + | tn.write(b"ip address 1.1.1.1 255.255.255.255\n") | ||
| + | tn.write(b"int loop 11\n") | ||
| + | tn.write(b"ip address 1.1.1.2 255.255.255.255\n") | ||
| + | tn.write(b"end\n") | ||
| + | tn.write(b"exit\n") | ||
| + | print(tn.read_all()) | ||
| + | </source> | ||
| + | |||
| + | ==SSH== | ||
| + | To use this module, you need to be able to ssh to one or more Cisco devices. | ||
| + | *[https://networksandrants.com/2019/11/27/using-python-and-ssh/ Using Python and SSH] | ||
| + | **[http://www.fabfile.org/ Fabric Homepage] | ||
| + | **[http://docs.fabfile.org/en/2.5/ Fabric Documentation] | ||
| + | ** | ||
[[Category:Python]] | [[Category:Python]] | ||
Latest revision as of 10:53, 8 April 2020
- Link til Google Hangout
- Vores facebookgruppe til at dele info via denne link - gruppen hedder Grundlæggende programmering - Python
- Kurset følger i første del video læringsmaterialet via denne link til Oreilly
- Materiale til øvelser i videomateriale via denne link til Github
Contents
Overhøring
Onsdag
- 13:00 - Brian
- 13:15 - Mads
- 13:30 - Michael
- 13:45 - Esben
Torsdag
- 08:00 - Karsten
Primtal opgave svar
Python and networking
Materials
- Python Network Programming for Network Engineers (Python 3) (Oreilly Video based)
- GNS3 see - Chapter 1 - part 2 to 6
- Link to: Cisco 7200 IOS
- Chapter 3 - Telnet
- Chapter 4 - SSH
- Chapter 5 - NAPALM - Mutivendor automation API
- GNS3 see - Chapter 1 - part 2 to 6
Telnet
To use this module, you need to be able to telnet to one or more Cisco devices.
Example of basic setup for Telnet and SSH
hostname R1
!
username cisco password 0 cisco
!
ip domain-name merhot.dk
!
crypto key generate rsa general-keys modulus 1024
!
aaa new-model
aaa authentication login default local
aaa authentication login CONSOLE none
aaa authorization exec default local
aaa session-id common
!
enable secret cisco
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
!
ip ssh time-out 60
ip ssh authentication-retries 2
ip ssh source-interface Loopback0
ip ssh logging events
!
line vty 0 15
transport input ssh telnet
!
line con 0
login authentication CONSOLEPython 3 telnet example
import getpass
import sys
import telnetlib
host = "192.168.239.129"
user = input("Username: ")
password = input("Password: ")
tn = telnetlib.Telnet(host)
tn.read_until(b"Username: ")
tn.write(user.encode('ascii') + b"\n")
if password:
tn.read_until(b"Password: ")
tn.write(password.encode('ascii') + b"\n")
tn.write(b"enable\n")
tn.write(b"cisco\n")
tn.write(b"conf t\n")
tn.write(b"int loop 10\n")
tn.write(b"ip address 1.1.1.1 255.255.255.255\n")
tn.write(b"int loop 11\n")
tn.write(b"ip address 1.1.1.2 255.255.255.255\n")
tn.write(b"end\n")
tn.write(b"exit\n")
print(tn.read_all())
SSH
To use this module, you need to be able to ssh to one or more Cisco devices.