Profile Script for IP range

Avatar

Avatar

melissae6854041

Avatar

melissae6854041

melissae6854041

06-05-2016

Hello, 

We are creating an experience where our success metric is time on site.  We have content authors who spend a lot of time on the site reviewing articles and making edits.  We would like to block our content authors from being included into the campaign so the results are not screwed.  My thought was to create a profile script to determine IP address.  We would then use this script to create an audience that targets everyone but those ranges  Could someone please comment on how to set this up?  

Thanks for any assistance.

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

ParitMittal

Avatar

ParitMittal

ParitMittal

18-05-2016

Hi ,

We have to change the syntax a bit. Please use the following code :

var strIp= user.header('x-cluster-client-ip');
 
var res = /^(192.236.17.44)$/.test(strIp);
 
if (res)
{
return "Invalid IP";
}
else
{
return "Valid IP";
}

Please let us know if you have any more queries.

Thanks & Regards

Parit Mittal

Answers (12)

Answers (12)

Avatar

Avatar

nickh86417692

Avatar

nickh86417692

nickh86417692

18-04-2019

Multiple full IPs would be
var res = /^(192.236.17.44)$|^(192.236.17.45)$|
^(192.236.17.46)$/.test(strIp);

If you just want to match "starts with" you can drop the "$" at the end

var res = /^(192.236)|^(192.237)|^(192.238)$/.test(strIp);

Avatar

Avatar

muhammeda378996

Avatar

muhammeda378996

muhammeda378996

05-11-2018

Thanks, everyone for this great info! How do I mention multiple ranges of IPs in the following code?

var res = /^(192.236.17.44)$/.test(strIp);

Can anyone please explain by mentioning 2-3 dummy IP range.

Avatar

Avatar

karinec21501309

Avatar

karinec21501309

karinec21501309

21-03-2018

audience-internal-ag.JPGThanks, but this doesn't work...

Avatar

Avatar

david_parker3

Avatar

david_parker3

david_parker3

21-03-2018

Here is how mine is set up (bluring out IP's)

screenshot.jpg

I create my audience by saying Visitor Profile; user.isInIpRange contains "webRange" where isInIpRange is the Profile Script and webRange is the value that would be returned in the script. 

Avatar

Avatar

karinec21501309

Avatar

karinec21501309

karinec21501309

21-03-2018

I don't get it working in Adobe target standard.

Is it normal that in the available tokens I don't see user.header?

user-header.jpg

My audience based on this script doesn't work...

Avatar

Avatar

david_parker3

Avatar

david_parker3

david_parker3

29-11-2017

I just had to go through this exercise...see below:

/^(192.236.17.44|192.168.1.1|192.168.5.2)$/.test(strIp);

Separate it by a pipe as an OR statement.

Avatar

Avatar

laurenr36581018

Avatar

laurenr36581018

laurenr36581018

29-09-2017

I've used this in the past for multiple IP addresses:

IP Address Exclusion/Inclusion Script Generator

You can put in ranges or single IPs. Be careful though, if you enter too many, the script breaks with no warning as Target has limits on the length of profile scripts but for some reason it doesn't tell you the limit on save (unless this has changed recently).

Avatar

Avatar

s_kala

Avatar

s_kala

s_kala

28-09-2017

Hi Parit,

Can you explain this code. Specially /^(192.236.17.44)$/.test(strIp); part so that I can modify it to enter multiple IP addresses. I am finding it difficult to comprehend this code.

Thanks,

Suchindra Kala

Avatar

Avatar

melissae6854041

Avatar

melissae6854041

melissae6854041

16-05-2016

Says that that the syntax is invalid.  Will not publish to adobe delivery network.

Avatar

Avatar

ParitMittal

Avatar

ParitMittal

ParitMittal

15-05-2016

Hi,

If you already know the Ip Address that need to be blocked then , You just have to update the profile script like this :

  1. var strIp= user.header('x-cluster-client-ip');
  2.  
  3. var res = "192.236.17.44";
  4.  
  5. if (res!=strlp)
  6. {
  7. return "Valid IP";
  8. }
  9. else
  10. {
  11. return "Invalid IP";
  12. }

and create an Audience like below :

Thanks & Regards

Parit Mittal

Avatar

Avatar

melissae6854041

Avatar

melissae6854041

melissae6854041

13-05-2016

So in Target Standard, what would be the next step for blocking the IP address of: 192.236.17.44? 

I know I need to create an audience using this profile script but in the dropdown I am not sure what you would choose.  Equals, Contains, Parameter is preset... etc.

Avatar

Avatar

ParitMittal

Avatar

ParitMittal

ParitMittal

11-05-2016

Hi , 

You can access the IP address of visitor using user.header('x-cluster-client-ip’) in a  profile script. Please see the below profile script code: 

  1. var strIp= user.header('x-cluster-client-ip');
  2.  
  3. var res = /^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/.test(strIp);
  4.  
  5. if (res)
  6. {
  7. return "Valid IP";
  8. }
  9. else
  10. {
  11. return "Invalid IP";
  12. }

The above code checks whether an IP address is a valid IP address or not on the basis of Regular Expression defined in the script and then returns the Valid or Invalid Ip . In your case , you can create a Regular Expression on the basis of your requirements and then check if the visitor ip address is a valid one or not. 

After All the Set up , You can create an Audience named as "Valid Audience" and add "Visitor Profile" as a rule and then choose the  above created profile script name as the refinement.

Please let us know in case of any more questions or queries.

Thanks & Regards

Parit Mittal