<?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>/home/mihap/KrNeki &#187; Linux</title>
	<atom:link href="http://blog.mihap.si/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mihap.si</link>
	<description>Mihov BloG o nepomembnih stvareh...</description>
	<lastBuildDate>Wed, 30 Nov 2011 07:29:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>phpIPAM version 0.5 released</title>
		<link>http://blog.mihap.si/phpipam-version-0-5-released/</link>
		<comments>http://blog.mihap.si/phpipam-version-0-5-released/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 17:56:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ipam]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=680</guid>
		<description><![CDATA[Dear all, I am happy to announce new version of phpipam IP address management – version 0.5, amongst others featuring VRF and AD authentication support. All new features and changes are described below&#8230; DEMO: http://phpipamdemo.mihap.si/ List of bug fixes and new features: New features: ------------- + Importing subnets from RIPE by AS in admin section; [...]]]></description>
			<content:encoded><![CDATA[<p>Dear all, I am happy to announce new version of phpipam IP address management – version 0.5, amongst others featuring VRF and AD authentication support. All new features and changes are described below&#8230;</p>
<p>DEMO: <a href="http://phpipamdemo.mihap.si/">http://phpipamdemo.mihap.si/</a></p>
<p>List of bug fixes and new features:</p>
<pre>
	New features:
	-------------
	+ Importing subnets from RIPE by AS in admin section;
	+ Added switch management and changed switch logic;
	+ Added VRF support;
	+ Added AD domain authentication;
	+ Added MAC address field to ip address;
	+ Added database table and belonging fields check under admin;

	Bugfixes / enhancements:
	------------------------
	+ Added DNS resolving when editing/adding IP address;
	+ Added IE compatibility meta tag and IE UI improvements for IE >= 8;
	+ Search returns also subnets and MAC searches;
	+ Added mac address and IP status to XLS import/export scripts;
	+ jQuery update from 1.6.2 to 1.7;
	+ Highcharts update from 2.1.2 to 2.1.8;

	+ Fixed dashboard errors if no IPv4/IPv6 subnets configured;
	+ Fixed errors with viewing / modifying IP addresses for Operator users;
	+ Fixed session cookie error on hosts;
	+ Fixed error when saving settings;
	+ Fixed instructions errors when inserting html code;
	+ Fixed first free IP address not displaying in IP request;
</pre>
<p>For installation and updating just extract the package, edit config.php and open browser to run database installer / updater (or do it manually &#8211; read UPDATING).</p>
<p><strong>Backup database files before upgrading!!!</strong></p>
<p><b>Please note that for AD authentication ldap support is required in php installation!</b></p>
<p>You can download it on sourceforge site: <a href="http://sourceforge.net/projects/phpipam/">phpipam-0.5</a></p>
<p>Some screenshots of new stuff:<br />

<a href='http://blog.mihap.si/phpipam-version-0-5-released/mac/' title='MAC'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/11/MAC-150x150.png" class="attachment-thumbnail" alt="MAC" title="MAC" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-5-released/vrf/' title='VRF'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/11/VRF-150x150.png" class="attachment-thumbnail" alt="VRF" title="VRF" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-5-released/switch/' title='Switch'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/11/Switch-150x150.png" class="attachment-thumbnail" alt="Switch" title="Switch" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-5-released/ripe/' title='RIPE'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/11/RIPE-150x150.png" class="attachment-thumbnail" alt="RIPE" title="RIPE" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-5-released/ad/' title='ad'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/11/ad-150x150.png" class="attachment-thumbnail" alt="ad" title="ad" /></a>
</p>
<p>Current plans for next release:</p>
<pre>
	- Character support;
	- selectable fields (mac, switch, port, ...)
	- subnet splitting;
	- search for available subnets;
	- translations (XML);
	- Sorting of IP addresses;
	- Sorting of subnets;
	- custom CSS;
</pre>
<p>brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/phpipam-version-0-5-released/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/phpipam-version-0-5-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpIPAM version 0.4 released</title>
		<link>http://blog.mihap.si/phpipam-version-0-4-released/</link>
		<comments>http://blog.mihap.si/phpipam-version-0-4-released/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 11:34:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Aktualno]]></category>
		<category><![CDATA[ipam]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=669</guid>
		<description><![CDATA[Dear all, I am happy to announce new version of PHP IP address management – version 0.4. All new features and changes are described below&#8230; DEMO: http://phpipamdemo.mihap.si/ List of bug fixes and new features: New features: ------------- + Massive add / edit / delete by specifying IP range (e.g. 10.10.0.1 - 10.10.0.254); + Database upgrade [...]]]></description>
			<content:encoded><![CDATA[<p>Dear all, I am happy to announce new version of PHP IP address management – version 0.4. All new features and changes are described below&#8230;</p>
<p>DEMO: <a href="http://phpipamdemo.mihap.si/">http://phpipamdemo.mihap.si/</a></p>
<p>List of bug fixes and new features:</p>
<pre>
	New features:
	-------------
	+ Massive add / edit / delete by specifying IP range (e.g. 10.10.0.1 - 10.10.0.254);
	+ Database upgrade / install from browser -> simplified installation/update procedure;
	+ New usertype viewer - can only view IP address list;
	+ Subnets can now be edited directly from IP address list;
	+ Option to lock subnet for writing to no-admin users;
	+ Device and Host list;
	+ Option to specify which subnet can have IP requests when editing / adding subnet if module is enabled;
	+ Latest version check on admin page;

	Bugfixes / enhancements:
	------------------------
	+ Fixed overspanning of multiple sections;
	+ Admin menu and add subnet now shown only to admins;
	+ Fixed VLAN table to show nesting and IP request option and statistics;
	+ Fixed subnet table to show nesting and IP request option;
	+ Subnet Adding shows only master subnets in section not in all sections;
	+ Tooltips and button hovers are now in separate javascript file;
	+ Graphs show only subnets with non-0 ip addresses;
	+ Various code enhancements + improved error handling;
	+ Fixed URL links not updating after few clicks;
	+ If loading slave subnet directly the subnet menu drops down and shows active slave subnet;
	+ Clicking on master shubnet shows all nested subnets and statistics;
	+ Redesigned log table;
	+ Fixed search;
</pre>
<p>For installation and updating just extract the package, edit config.php and open browser to run database installer / updater (or do it manually &#8211; read UPDATING).</p>
<p>You can download it on source forge site: <a hre="http://sourceforge.net/projects/phpipam/files/current/phpipam-0.4.tar/download">phpipam-0.4.tar</a></p>
<p>Some screenshots of new stuff:<br />

<a href='http://blog.mihap.si/phpipam-version-0-4-released/logs-2/' title='Logs'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/Logs-150x150.png" class="attachment-thumbnail" alt="Logs" title="Logs" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-4-released/range-adding/' title='Range adding'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/Range-adding-150x150.png" class="attachment-thumbnail" alt="Range adding" title="Range adding" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-4-released/subnet-edit/' title='Subnet edit'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/Subnet-edit-150x150.png" class="attachment-thumbnail" alt="Subnet edit" title="Subnet edit" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-4-released/vlan/' title='VLAN'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/VLAN-150x150.png" class="attachment-thumbnail" alt="VLAN" title="VLAN" /></a>
</p>
<p>brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/phpipam-version-0-4-released/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/phpipam-version-0-4-released/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>phpIPAM version 0.3 released</title>
		<link>http://blog.mihap.si/phpipam-version-0-3-released/</link>
		<comments>http://blog.mihap.si/phpipam-version-0-3-released/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 15:13:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Aktualno]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[ipam]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=638</guid>
		<description><![CDATA[Dear all, I am happy to announce new version of PHP IP address management &#8211; version 0.3. Among other things It includes most requested subnet nesting&#8230; DEMO: http://phpipamdemo.mihap.si/ List of bug fixes and new features: New features: ------------- + Subnet nesting - you can now have master subnet and normal subnets belonging to it; + [...]]]></description>
			<content:encoded><![CDATA[<p>Dear all, I am happy to announce new version of PHP IP address management &#8211; version 0.3. Among other things It includes most requested subnet nesting&#8230;</p>
<p>DEMO: <a href="http://phpipamdemo.mihap.si/">http://phpipamdemo.mihap.si/</a></p>
<p>List of bug fixes and new features:</p>
<pre>
	New features:
	-------------
	+ Subnet nesting - you can now have master subnet and normal subnets belonging to it;
	+ Server settings are now moved to database and can be set under admin menu;
	+ Request IP module on login page with email notification;
	+ Confirm/reject IP address request from admin page with mail notification;
	+ Admin dashboard notification of new requests;
	+ Autocomplete of owner and Switch name from all available when adding/editing IP address;
	+ New settings quick access on button hover;
	+ Option to export each subnet indivudually;

	Bugfixes / enhancements:
	------------------------
	+ jQuery update from 1.6 to 1.6.2;
	+ VLANs are now grouped by section;
	+ Direct access to subnet from vlan table;
	+ UI enhancements;
	+ Fixed user editing bug where user update broke password;
	+ Fixed password in new account notification;
	+ Fixed percentage display on Dashboard;
	+ IPv6 calculator /64 limit fixed;
	+ Changed tooltip effect to appear instantly for smoother display;
	+ Login functions are now separate file;
</pre>
<p>For upgrading please read UPGRADE file in package, basically it is done in standard unix way:</p>
<ol>
<li>Backup database and existing files;</li>
<li>Extract package and edit settings in config.php;</li>
<li>Update database with importing UPDATE.sql file;</li>
</ol>
<p>New installation stays the same as before&#8230;</p>
<p>You can download it on source forge site: <a href="https://sourceforge.net/projects/phpipam/">phpipam-0.3</a>.</p>
<p>Some screenshots:<br />

<a href='http://blog.mihap.si/phpipam-version-0-3-released/administration/' title='Administration'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/Administration-150x150.png" class="attachment-thumbnail" alt="Administration" title="Administration" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/dashboard-2/' title='dashboard'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/dashboard-150x150.png" class="attachment-thumbnail" alt="dashboard" title="dashboard" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/ipv4/' title='IPv4'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/IPv4-150x150.png" class="attachment-thumbnail" alt="IPv4" title="IPv4" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/ipv6-2/' title='IPv6'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/IPv6-150x150.png" class="attachment-thumbnail" alt="IPv6" title="IPv6" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/request/' title='Request'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/Request-150x150.png" class="attachment-thumbnail" alt="Request" title="Request" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/requestedit/' title='RequestEdit'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/RequestEdit-150x150.png" class="attachment-thumbnail" alt="RequestEdit" title="RequestEdit" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/vlan_table/' title='vlan_table'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/vlan_table-150x150.png" class="attachment-thumbnail" alt="vlan_table" title="vlan_table" /></a>
<a href='http://blog.mihap.si/phpipam-version-0-3-released/xlsimport/' title='XLSimport'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/08/XLSimport-150x150.png" class="attachment-thumbnail" alt="XLSimport" title="XLSimport" /></a>
</p>
<p>Comments welcome.</p>
<p>Kind regards,<br />
Miha</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/phpipam-version-0-3-released/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/phpipam-version-0-3-released/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>IPAM (IP address management)</title>
		<link>http://blog.mihap.si/ipam-ip-address-management/</link>
		<comments>http://blog.mihap.si/ipam-ip-address-management/#comments</comments>
		<pubDate>Mon, 11 Apr 2011 17:26:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Aktualno]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=552</guid>
		<description><![CDATA[Lately I have played around in my free time with creating IPv4/v6 address management program, as a replacement for managing IP addresses and subnets etc. in excel file&#8230; There are many commercial IPAMs available, which can do even more stuff, but I prefer to keep things light, simple, free and without unneeded balast. App is [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I have played around in my free time with creating IPv4/v6 address management program, as a replacement for managing IP addresses and subnets etc. in excel file&#8230; There are many commercial IPAMs available, which can do even more stuff, but I prefer to keep things light, simple, free and without unneeded balast.<br />
<a href="http://blog.mihap.si/wp-content/uploads/2011/04/2_dashboard.png" rel="lightbox[552]"><img src="http://blog.mihap.si/wp-content/uploads/2011/04/2_dashboard-300x208.png" alt="" title="Dashboard" width="300" height="208" class="size-medium wp-image-580" style="border:none" /></a></p>
<p>App is ajax-based using jQuery libraries, it uses php scripts and javascript and some HTML5 features, so some modern browser is preferred to be able to display javascript quickly/correctly&#8230; </p>
<p>Some main features include:</p>
<ul>
<li>Section / Subnet separation</li>
<li>IPv4/v6 support</li>
<li>Displays free range and number of clients</li>
<li>Subnet statistics</li>
<li>User management</li>
<li>E-Mail notification</li>
<li>Import IP addresses from XLS / CSV file</li>
<li>IPv4/v6 calculator</li>
<li>Search IP database</li>
<li>and many others.</li>
</ul>
<p>If there will be interest I plan to launch it as an open source project. Next plans for v 0.2 are use of domain authentication, viewer-only user type, rss change feed, mass edit/delete/create, etc. </p>
<p>App can be tested on the following demo page:<br />
<a href="http://ipamdemo.mihap.si">ipamdemo</a></p>
<p>Some screenshots are below&#8230;<br />

<a href='http://blog.mihap.si/ipam-ip-address-management/2_dashboard/' title='Dashboard'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/2_dashboard-150x150.png" class="attachment-thumbnail" alt="Dashboard" title="Dashboard" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/3_ipv4/' title='3_ipv4'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/3_ipv4-150x150.png" class="attachment-thumbnail" alt="3_ipv4" title="3_ipv4" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/4_ipv6/' title='4_ipv6'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/4_ipv6-150x150.png" class="attachment-thumbnail" alt="4_ipv6" title="4_ipv6" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/5_ipedit/' title='5_ipEdit'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/5_ipEdit-150x150.png" class="attachment-thumbnail" alt="5_ipEdit" title="5_ipEdit" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/6_ipcalc/' title='6_ipCalc'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/6_ipCalc-150x150.png" class="attachment-thumbnail" alt="6_ipCalc" title="6_ipCalc" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/7_search/' title='7_search'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/7_search-150x150.png" class="attachment-thumbnail" alt="7_search" title="7_search" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/8_subnetmanagement/' title='8_subnetManagement'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/8_subnetManagement-150x150.png" class="attachment-thumbnail" alt="8_subnetManagement" title="8_subnetManagement" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/9_user/' title='9_user'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/9_user-150x150.png" class="attachment-thumbnail" alt="9_user" title="9_user" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/10_logs/' title='10_logs'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/10_logs-150x150.png" class="attachment-thumbnail" alt="10_logs" title="10_logs" /></a>
<a href='http://blog.mihap.si/ipam-ip-address-management/11_import/' title='11_import'><img width="150" height="150" src="http://blog.mihap.si/wp-content/uploads/2011/04/11_import-150x150.png" class="attachment-thumbnail" alt="11_import" title="11_import" /></a>
</p>
<p>suggestions/comments are welcome <img src='http://blog.mihap.si/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/ipam-ip-address-management/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/ipam-ip-address-management/feed/</wfw:commentRss>
		<slash:comments>67</slash:comments>
		</item>
		<item>
		<title>mysql &#124; sort by IP address</title>
		<link>http://blog.mihap.si/mysql-sort-by-ip-address/</link>
		<comments>http://blog.mihap.si/mysql-sort-by-ip-address/#comments</comments>
		<pubDate>Sat, 11 Dec 2010 17:32:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=547</guid>
		<description><![CDATA[One small tip &#8211; if you have table of IP addresses and you want to sort them by IP addressing it will not work properly&#8230;: mysql> select ipaddr from ipaddresses order by ipaddr asc; +---------------+ &#124; ipaddr &#124; +---------------+ &#124; 10.12.50.1 &#124; &#124; 10.12.50.123 &#124; &#124; 10.12.50.2 &#124; &#124; 10.12.50.5 &#124; +---------------+ 4 rows in [...]]]></description>
			<content:encoded><![CDATA[<p>One small tip &#8211; if you have table of IP addresses and you want to sort them by IP addressing it will not work properly&#8230;:</p>
<pre>
mysql> select ipaddr from ipaddresses order by ipaddr asc;
+---------------+
| ipaddr        |
+---------------+
| 10.12.50.1    |
| 10.12.50.123  |
| 10.12.50.2    |
| 10.12.50.5    |
+---------------+
4 rows in set (0.00 sec)
mysql>
</pre>
<p>As you can see the .123 should come last but it is in second place&#8230; The solution is to use mysql's <a href="http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_inet-aton">aton</a> function, which transforms IP into integer and sorts the fields properly&#8230;</p>
<pre>
mysql> select ipaddr from ipaddresses order by INET_ATON(ipaddr) ASC;
+---------------+
| ipaddr        |
+---------------+
| 10.12.50.1    |
| 10.12.50.2    |
| 10.12.50.5    |
| 10.12.50.123  |
+---------------+
4 rows in set (0.00 sec)
mysql>
</pre>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/mysql-sort-by-ip-address/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/mysql-sort-by-ip-address/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache IPv6 UMTS server @Nokia N900</title>
		<link>http://blog.mihap.si/apache-ipv6-umts-server-nokia-n900/</link>
		<comments>http://blog.mihap.si/apache-ipv6-umts-server-nokia-n900/#comments</comments>
		<pubDate>Sat, 22 May 2010 10:58:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[english]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=462</guid>
		<description><![CDATA[Nokia N900 is the first mobile device that can do "dual-stack" IPv4 and IPv6 connection on packet data mobile networks (EDGE,UMTS,HSPA) &#8211; well, 2 separate PDP contexts anyway, but close enough since it is not really supported by 3GPP yet. It requires some kernel modifications, which I cannot provide here, but if there is any [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://maemo.nokia.com/n900/">Nokia N900</a> is the first mobile device that can do "dual-stack" IPv4 and IPv6 connection on packet data mobile networks (EDGE,UMTS,HSPA) &#8211; well, 2 separate PDP contexts anyway, but close enough since it is not really supported by <a href="http://www.3gpp.org/">3GPP</a> yet. It requires some kernel modifications, which I cannot provide here, but if there is any interest send me email and I can provide some info on that subject&#8230;</p>
<p>Anyway, once we have <a href="http://en.wikipedia.org/wiki/IPv6">IPv6</a> connectivity to internet we can also setup device to act as web server &#8211; since it is a <a href="http://www.linux.org/">Linux</a> device this is not too hard to do. However, most mobile operators block the incoming TCP connection toward clients to prevent overcharging, so contact your ISP to verify if incoming connections are allowed. Here is the output from my <i>ifconfig</i>, that shows two active mobile data interfaces and sessions, one for IPv4 and second for IPv6:</p>
<pre>
gprs0     Link encap:UNSPEC  HWaddr *
          inet addr:10.10.9.14  P-t-P:10.10.9.14  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP  MTU:1400  Metric:1
          RX packets:1158 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1294 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10
          RX bytes:162582 (158.7 KiB)  TX bytes:139618 (136.3 KiB)

gprs1     Link encap:UNSPEC  HWaddr *
          inet6 addr: 2a02:840:beef:30::2/0 Scope:Global
          UP POINTOPOINT RUNNING NOARP  MTU:1400  Metric:1
          RX packets:73 errors:0 dropped:0 overruns:0 frame:0
          TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10
          RX bytes:8680 (8.4 KiB)  TX bytes:39414 (38.4 KiB)
</pre>
<p><span id="more-462"></span><br />
For Apache to run we have to first install the <a href="http://wiki.maemo.org/Easy_Debian">Easy Debian</a> package for N900, and after that the <i>libapache2-mod-php</i> package inside chrooted environment, which installs all required packages because of dependancies. Volia! We can verify that apache is listening on IPv6 interface by entering the following command:</p>
<pre>
[root@deb-m5v3d: /]netstat -tunlp | grep apache
tcp6     0    0    :::80    :::*      LISTEN   2009/apache2
[root@deb-m5v3d: /]
</pre>
<p>the <i>:::80</i> means we are listening on all IPv6 interfaces on port 80. Here are some screenshots, just apache showing the basic php info:<xmp><?php phpinfo(); ?></xmp></p>
<p>Server localhost:<br />
<img src="http://mihap.si/share/server_n900.png" style="max-width:600px"><br />
Client access to server:<br />
<img src="http://mihap.si/share/client_n900.png" style="width:600px;border:none"></p>
<p>All other apps should work also&#8230;</p>
<p>brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/apache-ipv6-umts-server-nokia-n900/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/apache-ipv6-umts-server-nokia-n900/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Genoo linux article</title>
		<link>http://blog.mihap.si/genoo-linux-article/</link>
		<comments>http://blog.mihap.si/genoo-linux-article/#comments</comments>
		<pubDate>Sat, 01 May 2010 17:37:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=444</guid>
		<description><![CDATA[Dober clanek o Gentoo Linuxu: http://kernelnews.com/articles/2010/gentoo_linux.html Gentoo Linux provides one of the most highly configurable Operating Systems around. Although the time spent installing and configuring Gentoo can turn out to be days instead of hours, the final installation will be totally optimized and customized to how you use your computer. Zadnje case opazam, da je [...]]]></description>
			<content:encoded><![CDATA[<p>Dober clanek o Gentoo Linuxu:<br />
<a href="http://kernelnews.com/articles/2010/gentoo_linux.html">http://kernelnews.com/articles/2010/gentoo_linux.html<br />
<img src="http://kernelnews.com/articles/2010/images/gentoo_linux_review.jpg"><br />
</a></p>
<pre>
Gentoo Linux provides one of the most highly configurable Operating Systems around. Although the time spent installing and configuring Gentoo can turn out to be days instead of hours, the final installation will be totally optimized and customized to how you use your computer.
</pre>
<p>Zadnje case opazam, da je veliko manj tezav pri nadgradnji paketov&#8230;</p>
<p>lpm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/genoo-linux-article/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/genoo-linux-article/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Captcha with jQuery, ajax and php</title>
		<link>http://blog.mihap.si/captcha-with-jquery-ajax-and-php/</link>
		<comments>http://blog.mihap.si/captcha-with-jquery-ajax-and-php/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 21:26:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[english]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=380</guid>
		<description><![CDATA[A while ago I came across this guide, as I was searching for some simple captcha implementation for some website. Plain and simple, all clear. The only thing I didn't like too much is the javascript part, for webpages I mainly use jQuery for javascripting, so I wanted to use jquery for ajax functions. Also, [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago I came across <a href="http://www.webcheatsheet.com/PHP/create_captcha_protection.php">this  guide</a>, as I was searching for some simple captcha implementation for some website. Plain and simple, all clear. The only thing I didn't like too much is the javascript part, for webpages I mainly use <a href="http://jquery.com/">jQuery</a> for javascripting, so I wanted to use jquery for ajax functions. Also, including multiple inputs besides captcha code makes javscript more comeplex (please read the comments, near the end) nad that is where jquery comes in handy.</p>
<p>The simplest possible example you can find on <a href="http://mihap.si/share/captcha/">http://mihap.si/share/captcha/</a>.</p>
<p>What we need:</p>
<ul>
<li><a href="#html">HTML code and php image generation code</a></li>
<li><a href="#jquery">jQuery library and script</a></li>
<li><a href="#php">PHP page for input verification</a></li>
</ul>
<p><span id="more-380"></span></p>
<h3 name="html">1.) HTML code</h3>
<p>We will use the simplest html input form, besides captcha input we will also add additional name field to demonstrate multiple input posting. For PHP image generation I will use the code from <a href="http://www.webcheatsheet.com/PHP/create_captcha_protection.php">original guide</a>, as no modifications are made.</p>
<p>HTML code (index.html):</p>
<pre class="prettyprint">
<</>!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

<</>html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<</>head>
	<</>title>Captcha test site</title>
	<</>meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<</>/head>

<</>body>

<</>!-- form -->
<</>form id="myform" method="post">
	Name:
	<</>input type="text" name="name"><</>br>
	Captch code:
	<</>input type="text" name="userinput"><</>br>
	Captcha image:
	<</>img class="captcha" src="captchacreate.php"><</>br>

	<</>input type="submit" value="Verify">
<</>/form>

<</>!-- result holder -->
<</>div class="result"><</>/div>

<</>/body>
<</>/html>
</pre>
<p>PHP image generation code (captchacreate.php):</p>
<pre class="prettyprint">
<</>?php
//Start the session so we can store what the security code actually is
session_start();

//Send a generated image to the browser
create_image();
exit(); 

function create_image()
{
    //Let's generate a totally random string using md5
    $md5_hash = md5(rand(0,999));
    //We don't need a 32 character long string so we trim it down to 5
    $security_code = substr($md5_hash, 15, 5); 

    //Set the session to store the security code
    $_SESSION["security_code"] = $security_code;

    //Set the image width and height
    $width = 100;
    $height = 22;  

    //Create the image resource
    $image = ImageCreate($width, $height);  

    //We are making three colors, white, black and gray
    $white = ImageColorAllocate($image, 255, 255, 255);
    $black = ImageColorAllocate($image, 0, 0, 0);
    $grey = ImageColorAllocate($image, 204, 204, 204); 

    //Make the background black
    ImageFill($image, 0, 0, $white); 

    //Add randomly generated string in white to the image
    ImageString($image, 3, 30, 3, $security_code, $black); 

    //Throw in some lines to make it a little bit harder for any bots to break
    ImageRectangle($image,0,0,$width-1,$height-1,$grey);
    imageline($image, 0, $height/2, $width, $height/2, $grey);
    imageline($image, $width/2, 0, $width/2, $height, $grey);
    //imageline($image, 0, 0, $width, $height, $grey);
    imageline($image, $width, 0, 0, $height, $grey); 

    //Tell the browser what kind of file is come in
    header("Content-Type: image/jpeg"); 

    //Output the newly created image in jpeg format
    ImageJpeg($image); 

    //Free up resources
    ImageDestroy($image);
}
?>
</pre>
<p>As you can see we create new session variable "security_code", into which we store the captcha code and display the created image on page. The same code must be entered through html user input form and then validated.</p>
<h3 name="jquery">2.) jQuery</h3>
<p>For jQuery source you can download the latest version on <a href="http://docs.jquery.com/Downloading_jQuery">download page</a>, or just include this link in index.html page header:</p>
<pre class="prettyprint">
<</>script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"><</>/script>
</pre>
<p>Now we have to tell jquery what to do with page &#8211; after the form with id myform is submitted, get all the variables, execute the ajax post function and in div result display the result of check.php function, into which we submit the entered variables. Also, we have to reload the image and reset the security_code:</p>
<pre class="prettyprint">
<</>script type="text/javascript">
$(document).ready(function()
{
$('#myform').submit(function() {
	//get user input and create random number
	var input = ($(this).serialize());
	var rand = Math.random();

	//submit post to check.php and reload image
	$.post('check.php', input, function(data) {
  		$('div.result').html(data);
  		$('img.captcha').attr("src", 'captchacreate.php?' + rand);
	});

	return false;
	});

return false;
});
<</>/script>
</pre>
<h3 name="php">3.) PHP verification code</h3>
<p>After the form is submitted, we have to check the user entered input against the security_code session variable. If all is ok, we display success and display the entered name &#8211; check.php:</p>
<pre class="prettyprint">
<</>?php
session_start();

//Check if the security code and the session value are not blank
//and if the input text matches the stored text
if ( ($_REQUEST["userinput"] == $_SESSION["security_code"]) &#038;&#038; (!empty($_REQUEST["userinput"]) &#038;&#038; !empty($_SESSION["security_code"])) ) {
	print '<</>h1>Input verification ok!<</>/h1>';
	print 'Welcome, '. $_REQUEST['name'];
}
else {
	print '<</>h1>Input verification failed!<</>/h1>';
}

?>
</pre>
<p>That is it. You can add more inputs as you like, checkboxes etc, no changes to jquery code is required as <a href="http://api.jquery.com/serialize/">.serialize()</a> function will take care of that. Of course the image generation is not good enough, php code must be enhanced to make it unreadable by computers, some hints are on <a href="http://www.webcheatsheet.com/PHP/create_captcha_protection.php#conclusion">original post</a>, you can also search the web for php image generation.</p>
<p>brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/captcha-with-jquery-ajax-and-php/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/captcha-with-jquery-ajax-and-php/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>IPv6 proxy streznik &#124; squid 3.1</title>
		<link>http://blog.mihap.si/ipv6-proxy-streznik-squid-3-1/</link>
		<comments>http://blog.mihap.si/ipv6-proxy-streznik-squid-3-1/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 12:24:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=310</guid>
		<description><![CDATA[Squid od verzije 3.1 (trenutno je se v beta verziji) naprej pozna IPv6 protokol in zna delati kot ipv6 proxy streznik&#8230; To je med drugim uporabno tudi na mobilnem podrocju &#8211; vecina mobilnih naprav se nima dual-stack podpore (oz ipv6 podpore), ce smo natancni, mislim da v casu pisanja samo Nokia Symbian telefoni podpirajo IPv6 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.squid-cache.org/">Squid</a> od verzije 3.1 (trenutno je se v beta verziji) naprej pozna IPv6 protokol in zna delati kot ipv6 proxy streznik&#8230;  To je med drugim uporabno tudi na mobilnem podrocju &#8211; vecina mobilnih naprav se nima dual-stack podpore (oz ipv6 podpore), ce smo natancni, mislim da v casu pisanja samo Nokia <a href="http://en.wikipedia.org/wiki/Symbian_OS">Symbian</a> telefoni podpirajo IPv6 dialup preko EDGE/HSPA omrezja. Tak proxy postane uporaben v primeru, da imamo na voljo samo IPv6 povezavo, rabimo pa tudi dostop do IPv4 streznikov.<br />
<img src="http://www.squid-cache.org/Images/img4.jpg" style="border:1px solid silver;margin:0px"><br />
Do squida dostopamo preko IPv6, ta pa nam poleg IPv6 servira tudi IPv4 sajte -> v kolikor dobi od DNSa oba A in AAAA record jasno uporabi IPv6 povezavo&#8230; Vec o IPv6 podpori v lignju si lahko preberete na <a href="http://wiki.squid-cache.org/Features/IPv6">tem</a> linku&#8230;</p>
<p>Same instalacije se nebi dotikal, kot vedno je odvisna od platforme&#8230; V kolikor nalagate binarne pakete bi morali imeti ipv6 podporo po defaultu omogoceno, v nasprotnem primeru ne pozabite sestaviti squida s podporo za ipv6.</p>
<p>Nastaviti moramo sledece:</p>
<ul>
<li>IPv6 nastavitev dostopovne tocke (APN) na telefonu ali
<li>Nastavitev brskalnika, da uporablja proxy streznik (google it!)
<li>IPv6 konfiguracija streznika
</ul>
<p><span id="more-310"></span></p>
<h4>IPv6 APN nastavitev na telefonu</h4>
<p>Tools -> settings -> Connection -> Access Points<br />
Dodamo novo dostopovno tocko ipv6 &#8211; proti ipv4 se spremeni sledece:</p>
<ul>
<li>Access point name &#8211; to dobite pri vasem operaterju (v prihodnosti <img src='http://blog.mihap.si/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )
<li>Advanced settings &#8211; Network type: ipv6
<li>Advanced settings &#8211; Proxy ser.add: [2a02:xxx:xxx::1] &#8211; (ja, potrebujete oglate oklepaje)
<li>Advanced settings &#8211; Proxy port number: 8080
</ul>
<h4>Konfiguracija squid streznika (squid.conf)</h4>
<p>Izpostavil sem samo za IPv6 relevanten del konfiguracije, seveda predvidevam, da imate delujoco IPv6 mrezo:</p>
<pre>
# acl ipv6 networks
acl ipv6clients src 2a02:xxxx:xxxx::/48
# permit access to ipv6 clients
http_access allow ipv6clients
http_access deny all
# Squid listen ip/port
http_port [2a02:x:x::x]:8080
</pre>
<p>Clean &#038; simple, to je to! Sedaj lahko zazenemo streznik:</p>
<pre>
/usr/local/squid/bin/squid -z	 (kreiramo dir za cache)
/usr/local/squid/bin/squid -NCd1  (za zacetek debug mode)
</pre>
<p>Se preverimo, ce poslusa na zeljenem portu (na linuxu je komanda <i>netstat -tunlp | grep 8080)</i>:</p>
<pre>
[root@mihap ~]# sockstat | grep 8080
USER  COMMAND     PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS
squid    squid        56306 13 tcp6   2a02:x:x::x:8080*:*
[root@mihap ~]#
</pre>
<p>in mogoce se pf inbound rule, v kolikor ga uporabljate:</p>
<pre>
myip6 = "2a02:x:x::x"
ipv6clients = "2a02:xxxx:xxxx::/48"
pass in quick on bce0 inet6 proto tcp from $ipv6clients to $myip6 port 8080
block in log all on bce0 inet6 from any to $myip6
</pre>
<p>Preverimo se lignjev log file:</p>
<pre>
2a02:x:x:x::x - - [06/Jan/2010:09:45:16 +0100] "GET http://ipv6.google.com/ HTTP/1.1" 200 1682 TCP_MISS:DIRECT
</pre>
<p>dela. <img src='http://blog.mihap.si/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>lpm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/ipv6-proxy-streznik-squid-3-1/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/ipv6-proxy-streznik-squid-3-1/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Is my GPRS/UMTS modem ipv6 capable?</title>
		<link>http://blog.mihap.si/is-my-gprsumts-modem-ipv6-capable/</link>
		<comments>http://blog.mihap.si/is-my-gprsumts-modem-ipv6-capable/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 13:49:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Aktualno]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.mihap.si/?p=306</guid>
		<description><![CDATA[Here is how you can check if your modem is capable of doing an ipv6 dialup&#8230; I won't get into details about how to connect to device via terminal, i wrote something similar in this post.. (Hint: M$ hyperterminal or putty, Linux and OsX minicom) Once you are logged onto device you have to issue [...]]]></description>
			<content:encoded><![CDATA[<p>Here is how you can check if your modem is capable of doing an ipv6 dialup&#8230; I won't get into details about how to connect to  device via terminal, i wrote something similar in <a href="http://blog.mihap.si/?p=147">this</a> post.. (Hint: M$ hyperterminal or putty, Linux and OsX minicom)</p>
<p>Once you are logged onto device you have to issue following command, with which you see the supported connection types: <b>at+cgdcont=?</b>. Here is the output from my <a href="http://www.nvtl.com/index.php?option=com_content&#038;view=article&#038;id=218:ovation-mc990d-72-mbps-hspagprsedge-networks&#038;catid=3&#038;Itemid=10">Novatel mc990D</a> card:</p>
<pre>
at+cgdcont=?
+CGDCONT: (1-16),"IP",,,(0-2),(0-3)
+CGDCONT: (1-16),"PPP",,,(0-2),(0-3)
+CGDCONT: (1-16),"IPV6",,,(0-2),(0-3)
</pre>
<p>If you see a third line (yes, the ipv6 one) then you are good to go.</p>
<p>brm</p>
<div class="none"><div class="g-plusone" data-href="http://blog.mihap.si/is-my-gprsumts-modem-ipv6-capable/" size="small" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://blog.mihap.si/is-my-gprsumts-modem-ipv6-capable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

