Benutzer-Werkzeuge

Webseiten-Werkzeuge

Übersetzungen dieser Seite:
de

bpi-r2:network:start

Netzwerk-Konfiguration

IP-Befehl benötigt iproute2-Paket

sonstige Pakete:

apt-get install iptables
apt-get install net-tools #netstat
apt-get install nmap
apt-get install tcpdump
apt-get install dnsutils --no-install-recommends #dig

die Konfiguration auf dieser Seite basiert auf debian stretch, sollte genauso unter Ubuntu funktionieren setzt Kernel 4.14 oder höher voraus (DSA-Treiber für Port-Trennung)

im Kernel 4.14 existiert eth0 als Verbindung zwischen CPU und dem Switch-Chip (mt7530), an denen die Ports wan und lan0-4 angeschlossen sind. diese Verbindung muss zuerst „up“ genommen werden.

Die Zuordnung der Ports auf eine GMAC ist definiert in der dts-Datei und kann mit „ip a“ angezeigt werden

Mit Kernel 4.14 >.52 wurde in meinem Repo die GMAC #2 (eth1) hinzugefügt und der Wan-Port darauf verbunden.

ohne weitere Konfiguration sind die LAN-Ports getrennt und benötigen eine eigene IP-Konfiguration in verschiedenen Subnetzen

viele Nutzer möchten sicherlich alle LAN-Ports im gleichen Netzwerk-Segment haben, so empfiehlt sich sie mit einer Netzwerkbrücke zu verbinden, um nur 1 IP-Konfiguration für “LAN” zu haben

MAC-Adresse

Die MAC-Adresse lässt sich nur für die GMAC (Verbindung Switch-CPU) setzen. Aktuell wird unter Kernel 4.14 nur eine erkannt (eth0). Hardwareseitig sind 2 GMACs vorhanden.

Möglichkeit via UDEV von hier

$ cat /etc/udev/rules.d/00-static-mac-address.rules
ACTION=="add", SUBSYSTEM=="net", KERNELS=="1b100000.ethernet", RUN+="/sbin/ip link set dev %k address ae:fc:de:ad:be:ef"

/etc/network/interfaces

iface lan0 inet static
  address 192.168.0.10
  netmask 255.255.255.0
  gateway 192.168.0.5
#  pre-up ip link set $IFACE up
  pre-up ip link set $IFACE address 02:01:02:03:04:08 up

systemd nutzen:

/etc/systemd/network/10-wan.link

[Match]
OriginalName=wan

[Link]
MACAddress=XX:XX:XX:XX:XX:XX

http://forum.banana-pi.org/t/set-mac-address-on-boot/7224/7

IP

dauerhaft

/etc/network/interfaces:

#upstream-Port (NIC zwischen CPU und MT7530-Switch) auf up
auto eth0
iface eth0 inet manual
  pre-up ip link set $IFACE up
  post-down ip link set $IFACE down

#upstream-Port #2 4.14.x >52 (NIC zwischen CPU und MT7530-Switch) auf up
auto eth1
iface eth1 inet manual
  pre-up ip link set $IFACE up
  post-down ip link set $IFACE down

#dann die lan-ports konfigurieren
auto lan0
iface lan0 inet static
  hwaddress ether 08:00:00:00:00:00 # if you want to set MAC manually
  address 192.168.0.10
  netmask 255.255.255.0
  gateway 192.168.0.5
  pre-up ip link set $IFACE up
  post-down ip link set $IFACE down

temporär

ifconfig eth0 192.168.0.10 netmask 255.255.255.0 broadcast 192.168.0.255
ip addr set 192.168.0.10/24 broadcast 192.168.0.255 dev eth0

DHCP

Client

/etc/network/interfaces:

auto lan3
allow-hotplug lan3
iface lan3 inet dhcp

Server

/etc/dnsmasq.conf (aktivieren durch entfernen des # am Zeilenanfang)

conf-dir=/etc/dnsmasq.d

/etc/dnsmasq.d/interfaces.conf

#interface=eth0
interface=wlan0
#interface=eth1
interface=ap0
 
# DHCP-Server nicht aktiv für Schnittstelle
#no-dhcp-interface=ppp0
no-dhcp-interface=eth0
no-dhcp-interface=eth1
 
#dhcp-authoritative
dhcp-range=ap0,192.168.10.100,192.168.10.150,255.255.255.0,48h
dhcp-option=ap0,3,192.168.10.1
dhcp-range=wlan1,192.168.11.100,192.168.11.150,255.255.255.0,48h
dhcp-option=wlan1,3,192.168.11.1

/etc/dnsmasq.d/interfaces.conf

service dnsmasq restart

mehrere IP pro MAC mit dnsmasq: https://stackoverflow.com/a/26964151

mehr Inforationen hier: dnsmasq

IPv6

ip -6 route
ip -6 route add default dev he-ipv6 #if you use he-ipv6-tunnel and no default-route is set
ping6 2001:4860:4860::8844 #google-dns

NAT/Routing

NAT

zum aktivieren von Network Adress Translation (private IPs hinter einer öffentlichen IP)

ipt=/sbin/iptables
if_wan=wan
${ipt} -t nat -A POSTROUTING -o ${if_wan} -j MASQUERADE

Routing

Routing für IPv4 aktivieren

echo 1 > /proc/sys/net/ipv4/ip_forward

Alternative:

nano /etc/sysctl.conf
#activate net.ipv4.ip_forward=1 and net.ipv6.conf.all.forwarding=1 by removing # at beginning of line
sysctl -p /etc/sysctl.conf

Standard-Gateway ändern:

ip route del default
ip route add default via 192.168.50.2

statische Routen zu anderen Netzwerken

Pakete werden an das Default-Gateway geschickt, wenn das Netz dem Router nicht bekannt ist. In klassischen Heimnetzen existiert meist nur ein Router und dort ist das default-Gateway die Internet-Schnittstelle und an den Client-Rechnern ist das Default-Gateway der Router.

statische Routen werden benötigt, wenn ein Netz nicht direkt am Router hängt und nicht über sein Default-Gateway (hier WAN) erreichbar ist

  • im Router #1 muss eine statische Route für das Netz 10.0.3.0/24 mit einem Next-Hop 10.0.2.2 (schickt Pakete über lan#2) eingerichtet werden
    • route add -net 10.0.3.0 netmask 255.255.255.0 gw 10.0.2.2
      ip route add 10.0.3.0/24 via 10.0.2.2
  • im Router #2 muss eine statische Route für das Netz 10.0.1.0/24 mit einem Next-Hop 10.0.2.1 (schickt Pakete über lan#1) eingerichtet werden
    • route add -net 10.0.1.0 netmask 255.255.255.0 gw 10.0.2.1
      ip route add 10.0.1.0/24 via 10.0.2.1

Beispiel für Netz 192.168.50.x hinter Router mit IP 192.168.0.10

route add -net 192.168.50.0 netmask 255.255.255.0 gw 192.168.0.10
ip route add 192.168.50.0/24 via 192.168.0.10

DNS

/etc/resolv.conf

enthält die IP-ADresse des Nameservers, z.B.

nameserver 192.168.0.10

Netzwerkbrücke

apt-get install bridge-utils

/etc/network/interfaces:

auto lan1
iface lan1 inet manual
auto lan2
iface lan2 inet manual

auto br0
iface br0 inet static
    address 192.168.40.1
    netmask 255.255.255.0
    bridge_ports lan1 lan2
    bridge_fd 5
    bridge_stp no

temporär

brctl addbr br0
brctl addif br0 lan2
ip addr add 192.168.0.18/24 dev br0
ip link set br0 up

brctl show br0
brctl delif br0 lan1
ip link set br0 down
brctl delbr br0

VLAN

temporär:

ip link add link wan name wan.140 type vlan id 140
#löschen
ip link del wan.140

/etc/network/interfaces:

auto lan3.60
iface lan3.60 inet static
  address 192.168.60.10
  netmask 255.255.255.0

Firewall (iptables)

Monitoring

#alles außer ssh
sudo tcpdump -i eth0 port not 22 > tcpdump.log
#alles von oder nach 192.168.0.11
tcpdump -nni lan0 host 192.168.0.11
#alles von 192.168.0.11
tcpdump -nni lan0 src host 192.168.0.11
#alles nach 192.168.0.11
tcpdump -nni lan0 dst host 192.168.0.11
#nur icmp
tcpdump -nni lan0 icmp
#pppoe discovery (PADI-PADT), ppp/lcp wird mit "pppoes" angezeigt
tcpdump -i wan pppoed
#wireshark-compatibles mitloggen (volle Pakete), es geht auch "-s0"
tcpdump -i <interface> -s 65535 -w tcpdump.cap

https://www.rationallyparanoid.com/articles/tcpdump.html

https://www.cyberciti.biz/faq/network-statistics-tools-rhel-centos-debian-linux/

ip -s link
netstat -i
netstat -s

erweiterte Netzwerk-Konfiguration

Policy Routing

QoS

spezielle konfiguration

Bambit

  • vlan 140 ⇒ internet
  • vlan 110 ⇒ voip

https://www.stadtwerke-bamberg.de/de/Meta/Service/Downloadportal/__attic__20180503_103612__Downloadportal/STWB-Internet-Technische-Information-Einsatz-eigenes-Endgeraet.pdf

ip link add link wan name wan.140 type vlan id 140
ip link add link wan name wan.110 type vlan id 110
# 2. pppoe-verbindung muss von anderer MAC-Adresse kommen
ip link set wan.110 down
ip link set wan.110 address 02:01:02:03:04:08 up
pppoeconf wan.140
plog
#config sichern
cp /etc/ppp/peers/dsl-provider /etc/ppp/peers/bambit-internet
pppoeconf wan.110
plog

cp /etc/ppp/peers/dsl-provider /etc/ppp/peers/bambit-voip
#diese datei bearbeiten und diese beiden Optionen auskommentieren:
#defaultroute
#replacedefaultroute

über die option unit <nummer> oder ifname <name> lässt sich der Name des PPP-Interfaces festlegen (um dieses im ppp-ip-up-script unterscheiden zu können)

unit 8 #nennt das Interface ppp8
#ifname ppp-bambit #nennt das Interface ppp-bambit

anpassen der /etc/network/interfaces:

#bambit-inet
auto wan.140
iface wan.140 inet manual

auto bambit-internet
iface bambit-internet inet ppp
pre-up /bin/ip link set wan.140 address 02:11:02:03:04:05 up # line maintained by pppoeconf
provider bambit-internet

#bambit-voip
auto wan.110
iface wan.110 inet manual

auto bambit-voip
iface bambit-voip inet ppp
pre-up /bin/ip link set wan.110 address 02:12:02:03:04:06 up # line maintained by pppoeconf
provider bambit-voip

sind beide Verbindungen aufgebaut, sollte „ip a“ so aussehen:

13: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN group default qlen 3
    link/ppp 
    inet 217.61.x.y peer 217.61.x.1/32 scope global ppp0
16: ppp1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN group default qlen 3
    link/ppp 
    inet 172.20.x.y peer 172.20.x.1/32 scope global ppp1

Diskussion

bpi-r2/network/start.txt · Zuletzt geändert: 2019/04/05 15:54 von frank