nims11's personal tech blog

foo, bar and foobar

Hostapd : The Linux Way to create Virtual Wifi Access Point

NOTE: Although this guide should work in most cases, it is not flawless and still requires few minor modifications to make the process bug-free. Please do point out corrections and changes.

I was recently looking into ways to use my laptop’s wifi adapter as a wireless access point to enable my phone (Nokia E63) and playstation portable to connect to the internet through it. Ad-hoc feature may be used to share internet through wifi, but it doesn’t work with many phones and my PSP. I found connectify and virtual router for Windows which served this purpose, unsatisfactorily. Other than the reasons like Virtual Router not detecting my 3g modem and Connectify (free version) not allowing me to set desired ssid for my virtual access point, the biggest issue with these two was the limited modes available for the access point. Both the programs offered only WPA2-PSK encryption for infrastructure mode and WEP and open encryption for ad-hoc modes. Many devices connect only through infrastructure mode and support for WPA2-PSK is absent in few devices (including the PSP). Also, since I am a Linux user, I needed something else.

This is where hostapd kicks in.

HOSTAPD

“hostapd is a user space daemon for access point and authentication servers. “

In simple words, hostapd allows you to create software wifi access points allowing decent amount of configuration options. In rest of this post, I will show how to create a software access point in Linux using hostapd and share your internet to the devices through it. I have used my Lenovo Z560 with ath9k wifi driver under Arch Linux and have also tested it under Ubuntu 11.10. But the method is also applicable for other Linux distros and supported hardware.

If the method works/doesn’t work for a non-Atheros wifi card, please do comment.
Read more of this post

BrainFuck : An eight-command awesome esoteric programming language

I was going through the SPOJ (SPhere Online Judge) challenge problems when i saw this problem in which the aim was to print a line using brainf**k with minimum source code size. If other well known languages were allowed, this problem would have been ridiculous. So i decided to try my hands on this esoteric language. Given its weird nature and limited features, playing with it is quite fun and the best part about it is that it takes you only around 10 minutes to learn this language. Read more of this post

Conversion among Data Types in C++

As a Programmer, i have quite often encountered situations where i need to convert one data type to another, especially conversions between int/float to strings. Be it solving problems on online judge or during implementation of mathematical parser or data type to hold BIG INTEGERS (bigger than what a fundamental data type can hold), these kind of conversions are quite useful. Here, i discuss few methods i use to achieve it. Read more of this post

Bootable flash Drives

Bootable optical discs are a thing of past (atleast for me). With usb flash drives packed with few gigs of storage becoming cheaper, its convenient to have a fully equipped pen drive in your pocket rather than carrying CDs/DVDs around. In this article, i will discuss about bootable USB drives and how to make one using various tools. Read more of this post

Why LINUX?

TUX

TUX - The Linux mascot

It has been two years since i first used Linux seriously and i have been its regular user since a year. Till now, Linux has never failed to impress me. This article discusses in brief who should switch to Linux and why.
Read more of this post

A Start to my Blogging journey

I begin my Blogging journey with this first post.

First an introduction about myself. I am a student pursuing Computer Science & Engineering from BIT Mesra. I am a tech geek in short.

Most of my future Blog posts will be related to Technology and related stuffs. This blog is also an attempt to improve my poor English skills so please bear with my language. :)