<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Netzwerk &#8211; Pascua Theus</title>
	<atom:link href="https://theus.name/category/netzwerk/feed/" rel="self" type="application/rss+xml" />
	<link>https://theus.name</link>
	<description>Informatik, IT-Sicherheit, Web</description>
	<lastBuildDate>Mon, 26 Jul 2021 07:48:05 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>

<image>
	<url>https://theus.name/wordpress/wp-content/uploads/2017/02/cropped-t-icon-32x32.png</url>
	<title>Netzwerk &#8211; Pascua Theus</title>
	<link>https://theus.name</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Fahrräder zählen</title>
		<link>https://theus.name/2019/06/01/fahrraeder-zaehlen/</link>
					<comments>https://theus.name/2019/06/01/fahrraeder-zaehlen/#respond</comments>
		
		<dc:creator><![CDATA[pascua]]></dc:creator>
		<pubDate>Sat, 01 Jun 2019 11:38:22 +0000</pubDate>
				<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Statistik]]></category>
		<guid isPermaLink="false">https://theus.name/?p=321</guid>

					<description><![CDATA[In Bonn gibt es 15 Fahrrad-Zählstationen. Immer wenn ein*e Radfahrer*in diese passiert, wird dies erfasst und bei dem Anbieter dieser Stationen in die Datenbank geschaufelt. Angeschafft hat diese Zähltationen die Stadt Bonn. Die Sichtbarkeit dieser Daten ist aber eher gering. An der Kennedybrücke steht zwar z.B. eine Säule, welche die Tageswerte dieser Station anzeigt, die &#8230; <a href="https://theus.name/2019/06/01/fahrraeder-zaehlen/" class="more-link"><span class="screen-reader-text">„Fahrräder zählen“ </span>weiterlesen</a>]]></description>
										<content:encoded><![CDATA[
<p>In Bonn gibt es 15 Fahrrad-Zählstationen. Immer wenn ein*e Radfahrer*in diese passiert, wird dies erfasst und bei dem Anbieter dieser Stationen in die Datenbank geschaufelt. Angeschafft hat diese Zähltationen die Stadt Bonn. Die Sichtbarkeit dieser Daten ist aber eher gering. An der Kennedybrücke steht zwar z.B. eine Säule, welche die Tageswerte dieser Station anzeigt, die meisten Werte sind aber nur umständlich über die <a rel="noreferrer noopener" aria-label=" (öffnet in neuem Tab)" href="https://www.bonn.de/themen-entdecken/verkehr-mobilitaet/zukunft-radverkehr.php" target="_blank">Webseite der Stadt</a> und des <a rel="noreferrer noopener" aria-label=" (öffnet in neuem Tab)" href="http://www.eco-public.com/public2/?&amp;id=100021143" target="_blank">Herstellers</a> ersichtlich. Um dies zu ändern poste ich seit einer kurzen Weile auf <a rel="noreferrer noopener" aria-label=" (öffnet in neuem Tab)" href="https://twitter.com/bonnbike" target="_blank">Twitter</a> und <a href="https://bonn.social/@bonnbike">Mastodon</a> tägliche Statistiken aller Fahrradzählstationen.</p>



<span id="more-321"></span>



<p><strong>Wichtig:</strong> Die folgende Erklärung über die API funktioniert so nicht mehr.</p>



<p>Allgemein dokumentiert ist aktuell nicht, wie man die Daten der Zählstationen erreichen kann. Ich habe mir dieses Wissen also etwas umständlich aus den Herstellerseiten zusammengefummelt und möchte ich es hier heute für euch dokumentieren. Es sei bedacht, dass die Stadt zwar regelmäßig (aber nur alle paar Jubelmonate) die Daten der Stationen auf <a rel="noreferrer noopener" aria-label="opendata.bonn.de (öffnet in neuem Tab)" href="https://opendata.bonn.de" target="_blank">opendata.bonn.de</a> veröffentlicht, der Zugriff auf die API des Herstellers selbst bisher jedoch nicht explizit gestattet ist.</p>



<p>Der Zugriff auf die Daten einer Zählstation ist recht einfach. Sie werden im JSON-Format bereitgestellt. Jede Zählstation hat eine ID, die man einfach an die RESTful API übermittelt. So sieht eine Anfrage dann ungefähr aus:</p>



<pre class="wp-block-preformatted">https://www.eco-public.com/api/cw6Xk4jW4X4R/data/periode/{counter_id}? begin={begin_date}&amp;end={end_date}&amp;step={step}</pre>



<p>Die Variablen in den geschweiften Klammern müsst ihr nun nur noch wie gewünscht ersetzen und erhaltet dann die Daten:</p>



<ul class="wp-block-list"><li><code>{counter_id}</code> mit der ID eines Zählers (s. unten)</li><li><code>{begin}</code> mit dem Anfangsdatum der gewünschten Daten in der Form <code>YYYYMMDD</code></li><li><code>{end}</code> mit dem Enddatum der gewünschten Daten in der Form <code>YYYYMMDD</code></li><li><code>{stept}</code> mit <code>2</code> für ein Interval von 15 Minuten oder <code>3</code> für ein Intervall von einer Stunde oder <code>4</code> für ein Intervall von einem Tag</li></ul>



<p>Das sieht dann zum Beispiel für die Tagesdaten des Monats Mai 2019 für die Kennedeybrücke so aus:</p>



<pre class="wp-block-preformatted">https://www.eco-public.com/api/cw6Xk4jW4X4R/data/periode/100021143?begin=20190501&amp;end=20190531&amp;step=4</pre>



<p>Die IDs der einzelnen Zähler habe ich euch hier zusammengetragen:</p>



<pre class="wp-block-preformatted">[
      {'id': 100021143, 'name': 'Kennedybrücke (gesamt)'},
      {'id': 100019810, 'name': 'Kennedybrücke (Südseite)'},
      {'id': 100019809, 'name': 'Kennedybrücke (Nordseite)'},
      {'id': 100032772, 'name': 'Südbrücke (gesamt)'},
      {'id': 100019722, 'name': 'Südbrücke (Südseite)'},
      {'id': 100019723, 'name': 'Südbrücke (Nordseite)'},
      {'id': 100019720, 'name': 'Nordbrücke (Südseite)'},
      {'id': 100019721, 'name': 'Nordbrücke (Nordseite)'},
      {'id': 100019724, 'name': 'Estermannufer'},
      {'id': 100019726, 'name': 'Brühler Straße'},
      {'id': 100027077, 'name': 'Wilhelm-Spiritus-Ufer'},
      {'id': 100019727, 'name': 'Straßenburger Weg'},
      {'id': 100019728, 'name': 'Von-Sandt-Ufer'},
      {'id': 100027075, 'name': 'John-J.-McCloy-Ufer'},
      {'id': 100019729, 'name': 'Rhenusallee'},
      {'id': 100027076, 'name': 'Hochwasserdamm Beuel'},
      {'id': 100019725, 'name': 'Bröhltalbahnweg'},
  ]</pre>



<p>Die Daten der Kenndeybrücke und der Südbrücke gibt es jeweils getrennt (Südseite / Nordseite) und zusammengerechnet (gesamt = Südseite + Nordseite). Somit hat die Liste insgesamt 17 Einträge für 15 verschiedene Zähler.</p>



<p>Darüber hinaus werden für alle Stationen die Vorbeifahrten auch getrennt der gefahrene Richtung bereitgehalten. Dafür müsste ihr die dritte Ziffer einer ID durch eine <code>1</code> bzw. eine <code>2</code> ersetzen (fragt bloß nicht warum!?). Für welche Richtung das dann jeweils genau steht, müsst ihr über die offiziellen Websites selbst herausfinden. Da ich das aktuell nicht nutze, habe ich das bisher nicht zusammengetragen.</p>



<p>Und nun: Viel Spaß damit und gebt Bescheid, wenn ihr aus den Daten etwas bastelt.</p>



<p><em><strong>Update (29. März 2021):</strong> Die hier vorgestellte Methode funktioniert nicht mehr bei allen Zählstellen. Zumindest die Zählstelle am John-J.-McCloy-Ufer lässt sich nach einer Reparatur so nicht mehr abfragen. Ich werde beizeiten erklären, welche alternativen Möglichkeiten sich bieten.</em></p>



<p><em><strong>Update (26. Juli 2021):</strong> Seit einiger Zeit funktioniert dies so auch nicht mehr bei den anderen Zählstellen. Ich werde in Kürze ein Update verfügbar machen.</em></p>
]]></content:encoded>
					
					<wfw:commentRss>https://theus.name/2019/06/01/fahrraeder-zaehlen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Gute Vorsätze: Weg mit dem NAS!</title>
		<link>https://theus.name/2019/01/02/gute-vorsaetze-weg-mit-dem-nas/</link>
					<comments>https://theus.name/2019/01/02/gute-vorsaetze-weg-mit-dem-nas/#respond</comments>
		
		<dc:creator><![CDATA[pascua]]></dc:creator>
		<pubDate>Wed, 02 Jan 2019 11:17:19 +0000</pubDate>
				<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">https://theus.name/?p=235</guid>

					<description><![CDATA[Hast du dir auch gute Vorsätze für das neue Jahr gemacht? Ich tue das eigentlich nie, aus gutem Grund: Denn Vorsätze müssen gut formuliert und geplant sein, sonst hält man sie ja doch nicht ein. Mein guter Vorsatz für dieses Jahr: Weg mit meinem NAS! Ich besitze seit vielen Jahren (es dürften jetzt schon circa &#8230; <a href="https://theus.name/2019/01/02/gute-vorsaetze-weg-mit-dem-nas/" class="more-link"><span class="screen-reader-text">„Gute Vorsätze: Weg mit dem NAS!“ </span>weiterlesen</a>]]></description>
										<content:encoded><![CDATA[
<p>Hast du dir auch gute Vorsätze für das neue Jahr gemacht? Ich tue das eigentlich nie, aus gutem Grund: Denn Vorsätze müssen gut formuliert und geplant sein, sonst hält man sie ja doch nicht ein. Mein guter Vorsatz für dieses Jahr: Weg mit meinem NAS!</p>



<span id="more-235"></span>



<p>Ich besitze seit vielen Jahren (es dürften jetzt schon circa sieben sein) ein <em>Network Attached Storage</em> (NAS). Der <a rel="noreferrer noopener" aria-label="DS211j von Synology (öffnet in neuem Tab)" href="https://global.download.synology.com/download/Document/DataSheet/DiskStation/11-year/DS211j/Synology_DS211j_Data_Sheet_deu.pdf" target="_blank">DS211j von Synology</a> ist inzwischen aber recht betagt und war schon bei der Anschaffung ein eher kleines Modell. Aber es beinhaltet immer noch alle Vorteile, die man von einem NAS mit Einschüben für zwei Festplatten von jeweils maximal 3 TB so erwarten kann. Ansonsten fällt es vor allem durch schwache Leistung auf: 1,2 GHz Single-Core und vor allem 128 MB RAM machen den alten Hasen langsam.</p>



<h2 class="wp-block-heading">Weg mit dem Strommonster</h2>



<p>Was läge also näher als den kleinen weißen Kasten, der so munter in meinem Wohnzimmer flackert endlich auszumisten? Immerhin verbraucht das Ding bis zu 25 W im Betrieb und 10 W im Ruhezustand. Mein (Öko-)Stromanbieter nimmt ca. 24 Cent pro kWh. Das kostet, wenn mich meine Rechenkünste nicht verlassen haben, also irgendwas zwischen 21,02 € (Dauer-Ruhezustand) und 52,56 € (Dauer-Betrieb) im Jahr. Das belastet nicht nur die Umwelt, sondern auch meinen Geldbeutel mehr als ich gedacht habe.</p>



<p>Die Dienste, die auf dem NAS laufen können eigentlich alle ausgelagert werden: Auf meinen Raspberry Pi, der eh Tag und Nacht läuft, um mir <a rel="noreferrer noopener" aria-label="Werbetracker vom Hals zu halten (öffnet in neuem Tab)" href="https://pi-hole.net/" target="_blank">Werbetracker vom Hals zu halten</a> oder auf meinem vServer, der dann auch ordentliche Rechenleistung und vor allem Netzanbindung hat.</p>



<h2 class="wp-block-heading">Welche Dienste laufen auf dem NAS?</h2>



<p>Auf dem NAS gibt es eine Vielzahl von möglichen Diensten, die einfach (und per Klick) installiert und administriert werden können. Alles per Weboberfläche, die allerdings sehr langsam und daher mühsam zu bedienen ist. Um herauszufinden, welche Dienste bei mir aktuell laufen, die dann in Zukunft entweder vom Pi oder vom vServer übernommen werden müssen, öffne ich das sogenannte „Paket-Zentrum“. Dort finde ich folgende installierte Pakete/Anwendungen:</p>



<ul class="wp-block-list"><li><strong>Audio-Station</strong></li><li><strong>File-Station</strong></li><li><strong>WebDAV Server</strong></li><li><strong>CardDAV Server</strong></li><li><strong>Text-Editor</strong></li><li><strong>Note Station</strong></li><li><em>Python Module</em></li><li><em>PHP 7.0</em></li><li><em>Universal Search</em></li><li><em>USB Copy</em></li><li><em>Speicher-Analysator</em></li></ul>



<p>Dienste, die in der Liste fett markiert sind, muss ich in den nächsten Wochen durch Alternativen ersetzen. Alle anderen sind eher NAS-spezifisch.</p>



<h3 class="wp-block-heading">Audio-Station</h3>



<p>In der Audio-Station liegt meine ganze Musiksammlung. Da ich mich bisher noch erfolgreich von Streaming-Diensten wie Spotify oder Deezer verwehrt habe, ermöglicht mir dieses Stück Software auch von unterwegs mit meinem Smartphone auf all die Musik zuzugreifen, die ich gern höre.</p>



<h3 class="wp-block-heading">File-Station</h3>



<p>Nix Cloud oder so. File-Station ermöglicht den Zugriff auf Dateien über das Netzwerk. Per Samba, NFS oder auch dem Browser. Den ganzen Wust an Dateien, die man eben nicht auf der Platte von seinem Computer haben möchte. Ewig alte Fotos, irgendwelche Backups und Hörbücher.</p>



<h3 class="wp-block-heading">WebDAV Server</h3>



<p>Den WebDAV Server nutze ich, um meine Kalender online zu verwalten.</p>



<h3 class="wp-block-heading">CardDAV Server</h3>



<p>Mit dem CardDAV Server halte ich meine Kontakte über verschiedene Geräte wie Smartphone, Notebook und Co synchronisiert.</p>



<h3 class="wp-block-heading">Text-Editor &amp; Note Station</h3>



<p>Den Text-Editor habe ich wahrscheinlich nur ein handvoll Male benutzt. Die Note Station dagegen nutze ich auf meinem Smartphone dafür wofür man eine Notiz-Anwendung eben nutzt. Schon einmal Weihnachtsgeschenkideen für Eltern, Geschwister und Freundin notieren.</p>



<h2 class="wp-block-heading">Und nun?</h2>



<p>Einige von den Diensten lassen sich wirklich ganz einfach ersetzen. Für Tipps über empfehlenswerte Software freue ich mich trotzdem. Vollständig in Rente wird das NAS übrigens wohl eher nicht gehen. Ich werde es wohl jede Nacht einmal aufwecken, um meine Backups draufzuspielen.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://theus.name/2019/01/02/gute-vorsaetze-weg-mit-dem-nas/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>IP per Kommandozeile bestimmen</title>
		<link>https://theus.name/2017/11/01/ip-per-kommandozeile-bestimmen/</link>
					<comments>https://theus.name/2017/11/01/ip-per-kommandozeile-bestimmen/#comments</comments>
		
		<dc:creator><![CDATA[pascua]]></dc:creator>
		<pubDate>Wed, 01 Nov 2017 12:21:17 +0000</pubDate>
				<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Snippets]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[grep]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Regex]]></category>
		<guid isPermaLink="false">https://theus.name/?p=116</guid>

					<description><![CDATA[Hin und wieder möchte man im ganz normalen Informatiker-Alltag seine IP-Adresse herausfinden. Tools wie ip sind unter Linux das Mittel der Wahl: $ ip addr 1: lo: &#60;LOOPBACK,UP,LOWER_UP&#62; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host &#8230; <a href="https://theus.name/2017/11/01/ip-per-kommandozeile-bestimmen/" class="more-link"><span class="screen-reader-text">„IP per Kommandozeile bestimmen“ </span>weiterlesen</a>]]></description>
										<content:encoded><![CDATA[<p>Hin und wieder möchte man im ganz normalen Informatiker-Alltag seine IP-Adresse herausfinden. Tools wie <em>ip</em> sind unter Linux das Mittel der Wahl:</p>
<pre>$ ip addr
1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: wlp3s0: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether a0:88:b4:38:49:68 brd ff:ff:ff:ff:ff:ff
    inet 192.168.178.131/24 brd 192.168.178.255 scope global dynamic wlp3s0
       valid_lft 851135sec preferred_lft 851135sec
    inet6 2001:4dd6:c6e9:0:1860:5ddc:f9c1:92e/64 scope global dynamic noprefixroute 
       valid_lft 6824sec preferred_lft 3224sec
    inet6 fe80::97e0:6e18:ff00:4a8d/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s25: &lt;NO-CARRIER,BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 00:21:cc:5d:73:ad brd ff:ff:ff:ff:ff:ff</pre>
<p><span id="more-116"></span></p>
<p>In diesem Beispiel erkennt man drei Interfaces, also Schnittstellen für die Kommunikation: <em>lo</em>, <em>wlp3s0</em>, <em>enp0s25</em>. Das erste ist das sogenannte <em>Loopback-Interface</em>, welches dafür genutzt wird, um Nachrichten an den Computer selbst zu senden; beispielsweise über die IP <em>127.0.0.1</em>. Der zweite Name <em>wlp3s0 </em>steht für das WLAN-Interface und der nicht minder kryptische Name <em>enp0s25</em> bezeichnet das Ethernet-Interface, also LAN (ohne wireless, also mit Kabel). Da das Notebook in diesem Moment nur per WLAN verbunden war, sieht man hier nur eine IP beim WLAN-Interface, nicht aber beim Ethernet-Interface.</p>
<p>Auffällig ist, dass man nur private IP-Adressen angezeigt bekommt. IPv4-Adressen des Blocks <em>192.168.0.0/16</em> (die also mit <em>192.168</em>.… beginnen) sind für private Netzwerke reserviert. Darüber erreichst du solche Geräte, die sich in deinem eigenen Heimnetz befinden, wie zum Beispiel deinen Fernseher oder deinen Drucker.</p>
<p>Diese IP-Adressen sehen die Server von z.B. Webseiten, auf denen wir surfen, aber nicht. Sie sehen die <em>öffentliche</em> IP-Adresse, welcher unser Router vom Provider zugewiesen bekommt. Das liegt daran, dass der Router alle Pakete umschreibt, die <em>private</em> IP-Adresse durch die <em>öffentliche</em> ersetzt und das Paket dann erst weiter an die Server schickt. Kommen die Antwortpakete, so macht er es umgekehrt. Die Technik dahinter heißt <em>Netzwerkadressübersetzung</em>, bekannter unter ihrer Abkürzung <em>NAT</em> (<em>Network Address Translation</em>). Der Grund des Einsatz dieser Technik liegt vor allem im Mangel an IPv4-Adressen. Da es davon nicht so viele gibt, können nicht jedem Rechner auf der Welt eine eigene Adresse zugewiesen werden, stattdessen bekommt meist jeder Anschluss nur <em>eine</em> IPv4-Adresse, die sich dann die verschiedenen Netzwerkteilnehmer (Notebooks, Desktop-PCs, Smartphones…) teilen müssen.</p>
<h3>Wie komme ich an meine öffentliche IP?</h3>
<p>Um an deine öffentliche IPv4-Adresse zu kommen, gibt es zahlreiche Dienste wie MeineIP.de oder WieIstMeineIP.de. Ich nutze ganz gerne <a href="https://www.monip.org/" target="_blank" rel="noopener">MonIP.org</a>, ein Service der ganz ohne Werbung und allzu viel Text und sonst irgendetwas auskommt.</p>
<p>Um seine öffentliche IPv4-Adresse herauszufinden, muss man allerdings nicht unbedingt den Browser bemühen. Dafür bietet sich das Kommadozeilentool <em>curl</em> an.</p>
<pre>$ curl -s http://www.monip.org/
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;
&lt;html&gt;

&lt;head&gt;
&lt;title&gt;MonIP.org v1.0&lt;/title&gt;
&lt;META http-equiv="Content-type" content="text/html; charset=UTF-8"&gt;
&lt;/head&gt;
&lt;P ALIGN="center"&gt;&lt;FONT size=8&gt;&lt;BR&gt;IP : 89.0.201.10&lt;br&gt;&lt;/font&gt;&lt;font size=3&gt;&lt;i&gt;xdsl-89-0-201-10.netcologne.de&lt;/i&gt;&lt;br&gt;&lt;/font&gt;&lt;font size=1&gt;&lt;br&gt;&lt;br&gt;Pas de proxy détecté - No Proxy detected&lt;/font&gt;&lt;/html&gt;%</pre>
<p>Die Option <em>s</em> versteckt die Progress Bar, ansonsten lädt curl einfach die Webseite herunter und gibt sie im Terminal aus. Das könnte einem natürlich schon reichen, aber die ganzen HTML-Tags stören noch. Daher gibt es noch eine kurze Erweiterung, um nur die IP-Adresse anzuzeigen. Dafür nutze ich das Programm <em>grep</em>.</p>
<pre>$ curl -s http://www.monip.org/ | grep -Po '(?&lt;=IP : )[^&lt;]*(?=&lt;)'                                                                                       
89.0.215.9</pre>
<p>Wir übergeben also dem Programm <em>grep</em> mithilfe des senkrechten Strichs (<em>pipe</em>) die Ausgabe von <em>curl</em>. Der Parameter <em>P</em> gibt an, dass der Ausdruck dahinter ein Perl-Regex ist. Ein <a href="https://de.wikipedia.org/wiki/Regul%C3%A4rer_Ausdruck" target="_blank" rel="noopener">Regex</a> ist ein Ausdruck, mit dem man Zeichenketten auf Muster durchsuchen kann (so ganz grob erklärt). Die Option <em>o</em> weist <em>grep</em> schließlich an, nur das gefundene Muster auszugeben. In unserem Regex suchen wir nach allen Zeichen, die kein <em>&lt;</em> sind (<em>[^&lt;]</em>) und zwischen den Ausdrücken <em>IP : </em> und <em>&lt;</em> stehen.</p>
<p>Das sieht ziemlich komplex aus und ist schwer zu merken, daher schreiben wir diesen Befehl noch in unsere <em>.bashrc</em>. Das ist die Konfigurationsdatei der Standard-Linux-Shell. Wenn du eine andere nutzt, musst du natürlich die entsprechende Konfigurationsdatei dieser Shell verwenden. Dann solltests du aber auch wissen, wie das geht. 😉</p>
<p>Dazu öffnen wir die Datei <em>.bashrc</em>, die sich als versteckte Datei in unserem Heimverzeichnis befindet. Du kannst sie zum Beispiel mittels <em>Vim</em> öffnen.</p>
<pre>$ vim ~/.bashrc</pre>
<p>Dort fügen wir dann am Ende der Datei folgende Zeile hinzu:</p>
<pre>alias myip="curl -s http://www.monip.org/ | grep -Po '(?&lt;=IP : )[^&lt;]*(?=&lt;)'"</pre>
<p>Von nun an können wir unsere IPv4-Adresse im Terminal ganz einfach mit dem Befehl</p>
<pre>$ myip</pre>
<p>anzeigen lassen. Dafür musst du vorab nur noch ein neues Terminal öffnen, damit die Änderungen an der Konfiguration wirksam werden.</p>
<h3>Was ist mit IPv6?</h3>
<p>Bei IPv6 haben wir im normalen Setup eines Heimnetzes dieses Problem nicht. Da es weitaus mehr IPv6-Adressen als IPv4-Adressen gibt, bekommt jedes Netzwerkgerät im Heimnetz eine eigene globale IP-Adresse, mit welcher es aus dem Netzwerk heraus erreichbar ist (eingehende Verbindungen werden aber normalerweise vom Router blockiert). In unserem Beispiel surft der Rechner also unter der IPv6-Adresse <em>2001:4dd6:c6e9:0:1860:5ddc:f9c1:92e</em>. Überprüfen lässt sich das zum Beispiel <a href="https://www.wieistmeineip.de/ipv6/" target="_blank" rel="noopener">hier</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://theus.name/2017/11/01/ip-per-kommandozeile-bestimmen/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>
