diff --git a/main.cpp b/main.cpp
index 457edfffbea249afe72c66d7363afa92512b3316..c66faf7481fbcb58d71fde07c6e7e623f78bd2ef 100644
--- a/main.cpp
+++ b/main.cpp
@@ -32,14 +32,14 @@ void print_help();
 int main(int argc, char *argv[])
 {
 	int cli_option;
-	int thread_num = 1;
+	int thread_num = 1, port = 53;
 	char working_dir[PATH_MAX] = { 0 };
 	getcwd(working_dir, PATH_MAX-1 );
 	bool run_as_daemon = false;
 	std::vector<command> command_list;
-	while((cli_option = getopt (argc, argv, "dkvt:w:h")) != -1)
+	while((cli_option = getopt (argc, argv, "dkvt:w:p:h")) != -1)
 	{
-		int ti = 0;
+		int tmp = 0;
 		switch(cli_option)
 		{
 			case 'd':
@@ -52,13 +52,18 @@ int main(int argc, char *argv[])
 				verbose = true;
 				break;
 			case 't':
-				ti = atoi(optarg);
-				if(ti>0)
-					thread_num = ti;
+				tmp = atoi(optarg);
+				if(tmp > 0)
+					thread_num = tmp;
 				break;
 			case 'w':
 				strncpy(working_dir, optarg, PATH_MAX-1);
 				break;
+			case 'p':
+				tmp = atoi(optarg);
+				if(tmp > 1)
+					port = tmp;
+				break;
 			case 'h':
 				print_help();
 				exit(EXIT_SUCCESS);
@@ -87,7 +92,7 @@ int main(int argc, char *argv[])
 
 	if(getuid() != 0)
 	{
-		log_on_demand(LOG_ERR, "You should run with root privileges!");
+		log_on_demand(LOG_ERR, "You should run it with root privileges!");
 		exit(EXIT_FAILURE);
 	}
 
@@ -150,7 +155,7 @@ int main(int argc, char *argv[])
 	memset(&server_address, 0, sizeof(server_address));
 	server_address.sin6_family = AF_INET6;
 	server_address.sin6_addr = in6_addr_any;
-	server_address.sin6_port = htons(10053);
+	server_address.sin6_port = htons(port);
 
 	server.init(general_sockaddr_wp((sockaddr *) &server_address, sizeof(server_address)));
 	if(verbose)
@@ -192,12 +197,18 @@ Therefore and some other reason the server must be run with root privileges.
 
 In daemon mode, the working directory must contain the dns.db file.
 
+There are some command line options with which you can make
+modifications to the default attributes of the runtime. 
+See them below.
+
 Options:
-	-d Run as daemon
-	-t threads Number of threads to start. Only makes sense with -d.
-	-k Kill daemon
-	-w workind_dir Set working directory. Absolute path needed.
+	-d Run as daemon.
+	-t THREAD_NUMBER Number of threads to start. Only makes sense with -d.
+	-k Kill daemon.
+	-w WORKING_DIR Set working directory. Absolute path needed.
 		If not set, the actual PWD will be used.
+	-p PORT Specifies the port for the server to bind to.
+		Only makes sense with -d
 	-v Verbose
 	-h help
 )");